IDE.Delphi.Отладка.Неправильная нумерация строк

Источник: delphikingdom
Volodimir V. Flyonts

Автор: Volodimir V. Flyonts, Королевство Delphi

При компиляции с включённой опцией Debug information и последующей отладкой в IDE происходил "сдвиг" строк (см. рис.1) что значительно усложняло установку BP и отладку вообще. Чаще всего это происходило с "чужими" модулями, в том числе и модулями из VCL. Не помогало включение/отключение опции Use debug DCU's и(или) добавление "неправильного" модуля в проект.

Проблема оказалась в неоднозначности используемых символов конца строки. В Windows ими обычно является последовательность (hex) 0D0A и согласно этому правилу номерует строки компилятор, в то же время IDE не так строго придерживается этих правил. В результате (см. рис.3) если в файле вместо 0D0A встречается только 0D , то для компилятора это не является концом строки, а для IDE является.


Рис.1. Точка останова в проблемном файле


Рис.2. Точка останова в нормальном файле


Рис.3. Проблема "под микроскопом"

Типовые решения Для обладателей FAR можно воспользоваться его встроенным редактором и при "Сохранении Файла Как" (Shift+F2) указать формат DOS/Windows. Подобная функция присутствует и в хорошо знакомом Word.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=21124