The Project Dependencies configuration has the options "Search Library Path" ("This will find sources for units in the library path.") and "Also search Browsing Path". Neither of them changes what the expert shows.
TfmProjDepend.LoadFileDependencies builds the list of folders only when "Search Library Path" is set, and then calls LoadFileDepend for each module of the project. In TfmProjDepend.LoadFileDepend (GX_ProjDepend.pas):
FileName = ''). The file found is stored in LFileName.IsDprOrPas, TUnitInfo.FileName, TEditReader.GetText) uses FileName, which is still empty. IsDprOrPas('') is False, so the module is skipped.So a file the search finds is never used.
In addition, only the modules of the project are scanned. Units that they use but that are not part of the project are never looked up in these folders, although that is what the option's description suggests.
Found while testing bug [#553] in Delphi 2007: with both options set, a project whose .dpr uses a unit that is on the library path only as a .dcu file, with its source on the browsing path, shows nothing more than with the options off. When the IDE reports a project module without a file name is not known yet.
Fixed in [r6041]. Since r3568 the file found by "Search Library Path" had been thrown away. Units that the project file uses without an "in" clause are now looked up and listed again. In Delphi XE2 and later, units written without their unit scope name (e.g.
SysUtilsinstead ofSystem.SysUtils) are still not found: that is [#574].Related
Bugs:
#574Commit: [r6041]