Delphi annoying, “finding a declaration” often doesn't work

Having had this with most versions of Delphi over the years, so I'm wondering, maybe this is something wrong with my code or this is the expected behavior from the IDE ..

Usually, when you place the cursor over a procedure / function / variable, etc., you can press Alt + Up, and it will go to where it was declared both in the same block and in separate ones, as well as if you right-click and select “Find declaration”, but very often it doesn’t work, even if you hover over and after a second, it tells you like .. “Declared in xx.pas”, but it it won’t go there anyway. Even if I type unitname.proc and try to execute proc, it still doesn't go to proc. If I open the block first (ctrl + enter over the device), even if I close it later, then it will work.

Is there a reason why this is happening?

+8
ide delphi
source share
4 answers

Go to Project> Options ...> Compiler.

Check the following fields here:

"Debug information"

Local Symbols

"Reference Information"

Click OK.

Reboot Delphi.

This is the solution to the problem in my case (Delphi 7).

Good luck.

+2
source share

This is because related systems are controlled by their own parser, which is different from the one in the compiler, and it was very bad and poorly maintained for many years. This has been a known issue for a long time, but it seems to be pretty low priority for people at Embarcadero.

+8
source share

I ran into this problem with the latest version of RadStudio (Radstudio / Delphi Berlin) (starting on 5/2/16).

My settings, more or less, already correspond to those offered by tcxbalage. Here is the equivalent of RadStudio Berlin:

Project | Option ... | Compiler Delphi | Compilation | Debugging: Local characters: true Symbol help: Help

Here's what I did to get the "Find Ad" support working correctly:

1) I changed the Symbol Reference to "Definitions Only". 2) Click OK. 3) Reopened project | Options and change "Symbol Reference" to "Reference." Click OK. 4) Restored my project.

Hope this helps anyone else facing the same issue.

0
source share

Is an output path set for compiled units that contains an environment variable? What CTRL + Click did doesn't work for me.

0
source share

All Articles