Leonid Podolny wrote:

> Hi, list,
> This letter is probably better suited to hackers-il, but I need help
> from people that are better acquainted with a development process of gcc.
> This morning, while browsing through pages of frustratingly irrelevant
> cscope output, I got an idea. In every kosher *nix development
> environment, the cross-references (i.e. "jump to definition of this
> struct/function") are built by some crippled 3rd party tool (such as
> ctags, cscope or home-brewed set of elisp scrips). On the other hand,
> the only tool that actually knows what is going on during compilation
> is gcc, so it's only logical that it should build cross-references
> along the way.
> It would be simply fantastic. The index would reflect the actual set
> of #ifdef's I currently work with. It would always point you to the
> header file that was actually #include-d. It would be immediately
> useful to almost everyone in FOSS world.
> I have a couple of ideas, how it might be tailored into gcc running
> sequence. However, I'm a humble gcc user  and I have almost no
> experience with its inner workings.
> The idea by itself is so obvious and on-the-surface that it everyone
> using gcc must come up with it sooner or later. There must be a very
> sound technical reason not to do so. What is it?

Sorry I did not read all the replys very thoroughly, but I did notice
that nobody mentioned gcc_xml
http://www.gccxml.org/

It does much more than what you need, but I'm sure that the information
you seek is in fact stored in the output (I believe a simple SAX
processor should be able to extract it fast enough to be integrated into
the dev environ). Besides - you could probably use more than just the
location of the defs.

Another possibility is to use the XML output of doxygen.

(both tools are successfuly used by automatic tools for auto-generating
python interface for C++ libraries).

      AA


=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to