Поиск места ошибки

 
Здраствуйте, Господа разработчики. Суть проблемы в следующем. Собрал советник, скомпилировал. Запуск в работу. В начале все нормально, затем вылетает по ошибке "Деление на ноль". Но поиск места ошибки довольно затруднен. Необходимо знать место ошибки. Хотя бы номер строки и в каком модуле. По большому счету речь идет об отладчике.
 
К сожалению, в исполнимом ex4 файле находится только скомпилированный код и нет никакой отладочной информации.
Какое может быть решение:
  • самостоятельно проверить все места с делениями (их должно быть мало) или
  • опубликовать в форуме код (здешние программисты ошибку быстро найдут)
 
Нашел ошибку. Но отладчик иметь было бы неплохо.
 

Кстати, по поводу отладчика.

Хотя на самом деле хочу сказать про редактор кода.
Если хотя бы иметь типа Notepad++ http://notepad-plus.sourceforge.net/ru/site.htm уже было бы очень хорошо.

 
Если я верно понял Рената, проблема не в возможности сделать навороченный редактор, а в том, что текущий бинарный .ex4 формат не содержит debug информации, и нет сейчас возможности её туда ввести или подключить снаружи, не нарушив обратную совместимость с множеством .ex4 файлов, гуляющих по миру, в том числе проданных инвесторам без исходных .mq4 файлов. А разрущение совместимости - это плохая практика и удар по репутации разработчика, плюс масса технических проблем и повышенная нагрузка на свой же tech support, возможная потеря части клиентов с платформы и т.д., т. е. всё равно будущие затраты, как ни старайся их избежать. В текущем редакторе даже был задел на отладчик, клавиша F9 ставит точку останова, но она не работает - не реализованный функцонал.

Как я понимаю, полноценный отладчик, так же, как и классы (class), структуры (struct) и перечисления (enum) - это удел будущей версии MQL5.

Хороший пример совместимости - Microsoft Visual Studio 2005 и MS .NET Framework 3. 0. Visual Studio 2005 была выпущена в 2005-м году с версией платформы .NET 2. 0. Потом уже в 2006-м году появилась бета, а затем релиз новой версии .NET 3.0, на момент разработки Visual Studio ничего не знала о будущей версии .Net 3.0, но после её установки (3.0) в Visual Studio появилась группа проектов под Framework 3.0. Т.е. "родитель" подключил к себе "потомка", ничего не зная о нём в момент своего рождения.
Причина обращения: