как дебажить макросы?
От: Visor2004  
Дата: 10.08.11 20:22
Оценка:
Открываю в студии продж, который использует мой макрос, аттачусь к ней дебаггером и компилирую при этом в дебаге у меня вылетает NotImplementedException в классе
OAReferenceBase<RefType> в свойстве CopyLocal.
Помните!!! ваш говнокод кому-то предстоит разгребать.
Re: как дебажить макросы?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.08.11 21:12
Оценка:
Здравствуйте, Visor2004, Вы писали:

V>Открываю в студии продж, который использует мой макрос, аттачусь к ней дебаггером и компилирую при этом в дебаге у меня вылетает NotImplementedException в классе

V>OAReferenceBase<RefType> в свойстве CopyLocal.

Что касается исключений, то их в интеграции летает нонны, так включать перехват нужно только тех исключений что надо, и только когда надо.

Что касается отладки, то прежде всего, надо понимать следующее...

Компиляция ведется в отдельном процессе. В то же время IDE проводит бэкграунд-компиляцию (точнее только ее часть — типизацию). По этому можно подключаться к студии в которой работает макрос, но только это будет отладка макроса работающего в режиме IDE. Если нужно отлаживать именно компиляцию (а зачастую это удобнее всего), то нужно просто добавить в код макроса assert2(false); и нажать на Retry, когда появится диалог ассерта. Далее нужно выбрать запуск новой копии студии или использования уже запущенной копии (только неиспользуемой в данный момент) и приступить к отладке.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: как дебажить макросы?
От: Visor2004  
Дата: 10.08.11 21:40
Оценка:
Здравствуйте, VladD2, Вы писали:

спс, попробую.
Помните!!! ваш говнокод кому-то предстоит разгребать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.