gnatfind
Usagegnatfind -f xyz:main.adb
The directories will be printed as well (as the ‘-f’ switch is set)
The output will look like:
directory/main.ads:106:14: xyz <= declaration directory/main.adb:24:10: xyz <= body directory/foo.ads:45:23: xyz <= declaration
that is to say, one of the entities xyz found in main.adb is declared at
line 12 of main.ads (and its body is in main.adb), and another one is
declared at line 45 of foo.ads
gnatfind -fs xyz:main.adb
gnatfind
will
display the content of the Ada source file lines.
The output will look like:
directory/main.ads:106:14: xyz <= declaration procedure xyz; directory/main.adb:24:10: xyz <= body procedure xyz is directory/foo.ads:45:23: xyz <= declaration xyz : Integer;
This can make it easier to find exactly the location your are looking
for.
gnatfind -r "*x*":main.ads:123 foo.adb
gnatfind main.ads:123
This is the same as gnatfind "*":main.adb:123
.
gnatfind mydir/main.adb:123:45
The column has to be the beginning of the identifier, and should not point to any character in the middle of the identifier.