Список кода без ссылки - PullRequest
0 голосов
/ 12 сентября 2010

Я использую Bold для Delphi с D2007.Модель довольно большая, и теперь я обнаружил, что у нас есть много методов, которые не вызваны.Компилятор должен дать подсказку об этом, но он тихий.

В Delphi компоновщик удаляет методы, на которые нет ссылок.Затем он дает подсказку при компиляции.Я пытаюсь объяснить, как Bold использует методы в модели.

Одна единица BusinessClasses.pas включает в себя сотни таких файлов:

TParcel = class(TOrderItem)
public
  procedure WayBillAsXML(var aXMLstring: string);
end;

Тогда у parcel.inc есть фактическая реализация метода:

procedure TParcel.WayBillAsXML(var aXMLstring: String);

Я думаю, что если я не вызову WayBillAsXML, то мне следует получить подсказку от компилятора, но об этом не говоритсяВ идеале я хочу список всего кода, на который нет ссылок.Есть ли способ?

1 Ответ

3 голосов
/ 13 сентября 2010

Компилятор не показывает подсказку, потому что метод общедоступен, и поэтому некоторый другой код может вызвать его. То же самое для защищенных методов. У другого (package-) модуля может быть класс, производный от вашего класса, и этот производный класс может вызывать метод.
Линкер Delphi недостаточно умен, чтобы признать, что метод вызывается не во всем проекте. Он обрабатывает файлы EXE / DLL и BPL одинаково. Но только последний позволит другому коду вызывать метод, тогда как он может удалить метод для файлов EXE / DLL.

...