'Open Declaration' finds the wrong instance of a routine [message #85168] |
Wed, 10 July 2013 11:03  |
BillG
Messages: 6 Registered: March 2007
|
Junior Member |
|
|
The idl workbench has a convenient feature: in the editor, if you right-click on a call to a procedure and select "Open Declaration", idl will open that procedure in a new window. However, it doesn't always find the correct instance of that procedure. Details below.
I have a project that contains multiple copies of an idl procedure calc_a.pro (see diagram below.)
- Only one copy of calc_a is in !path.
- The routine calc_b.pro calls calc_a.
- In calc_b.pro, if I right-click on the call to calc_a and select "Open Declaration", it opens \project\old\calc_a.pro not \project\proc.calc_a.pro.
- However, 'help,/source' shows that the desired copy of calc_a.pro has been compiled.
How do I prevent IDL from opening the wrong copy of calc_a.pro? The different copies of calc_a.pro may be different leading to confusion or worse.
Notes:
- C:\MyProject\old is ***not*** in !path nor is './'
- Project>Properties>IDL Project Properties>"Update IDL path when project is opened or closed" is un-checked.
- The tab "Problems" shows
"Duplicate Routine: calc_a calc_a.pro C:\MyProject\old
The problem does not appear to be with !path, but I can't find any other settings or preferences that control this behavior.
--------------------------------------
Project structure:
\MyProject
\proc
calc_a.pro
calc_b.pro
\old
calc_a.pro
IDL> print, !path
C:\(idl stuff);C:\MyProject\proc
IDL> help,/source
...
...
calc_a C:\MyProject\proc\calc_a.pro
...
idl 8.2.2
Windows 7 pro
-----------------------------------------
Any suggestions?
Cheers,
Bill Gallery
National Environmental Observatory Network (NEON) Inc.
Boulder, CO
|
|
|