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.
Ссылки по теме