Hi, Eric.

2009/4/17 Eric M. Ludlam <eric@siege-engine.com>
It will certainly open some files, but in general it closes them again
as needed.

A good trick is to use: 

M-x debug-on-entry RET find-file-noselect RET

Then run your experiment.  It will stop on every file load.  Press "c"
to continue.  It will stop twice per call.  Once per entry, and once
per exit.

Make note of what is on the stack when the offending file goes by.
That will help direct us to the right thing.  If it is related to
Global and the symref code, we could experiment with letting tags out
that have line numbers instead of character positions.

 On the test code I sent to you, I type M-x debug-on-entry RET find-file-noselect RET

 Then I type M-x semantic-analyze-current-context, the backtrace stoped twice total. I saved the *Backtrace* buffer contents and send to you. I hope you can help me check them, I don't know what is the important thing in the *Backrace* buffer.

Best Regard.


         Eric Ludlam:                       eric@siege-engine.com
  Siege: www.siege-engine.com          Emacs: http://cedet.sourceforge.net