Generic определен в модуле, нарушающем отладочную информацию

Это, должно быть, ошибка Delphi ...

У меня есть модуль, который является основой моей структуры устойчивости. В этом модуле у меня есть базовый класс для всех моих объектов домена, класс списка и общий класс списка.

Совсем недавно я заметил, что, когда я перехожу в модуль во время отладки, выполнение переместится в точку немного ниже по файлу, чем следовало бы ... Может быть, на четыре или пять строк. Изменение порядка файла не имеет значения. Код также генерировал нарушения доступа, но только когда я его отлаживал.

Я пытался найти причину этого ... На ум пришло несколько вещей, например, некоторая инъекция кода при помощи отладчика (например, это ошибка драйвера веб-камеры logitec ), или отладочная информация не синхронизирована с источником моего модуля (например, dcu был извлечен из какого-то старого источника).

В конце концов я запустил виртуальную машину с чистой Windows + Delphi установил, взял только то, что мне нужно для тестирования модуля, и создал небольшой проект DUnit для его тестирования. Та же проблема.

Затем я начал извлекать вещи из устройства по одному, пока он не заработал. Единственное, что имело значение, это когда я удалил общий класс списка.

Кто-нибудь еще видел эту проблему? Кто-нибудь знает, как это обойти?

Заранее спасибо,

N @

Обновление : добавление универсального обратно в устройство приводит к повторению проблемы, поэтому это не проблема устаревших DCU.

5
задан Community 23 May 2017 в 11:47
поделиться