Re: [cedet-semantic] Semantic and jumping (was: Semantic issue and questions )
Brought to you by:
zappo
From: Michael R. <re...@gm...> - 2008-02-13 17:13:25
|
On Wednesday 13 February 2008 05:10, Eric M. Ludlam wrote: > > In CEDET/CVS, I had optimized the analyzer to make it much faster, but > file location of tags got lost which caused it to jump into random > locations. I've attempted to save file names with tags as the > analyzer runs, and now the jump routine is a bit more robust. (Now in > CVS.) I tested it, also with bigger source files, and ia-jumping seems to work pretty well now. Thanks a lot! It seems my observation that it jumps to a local implementation, if present, was also a bug...it _always_ jumps to the header file, right? > > For your specific question about going to an implementation instead of > the in class declaration. The ia-jump command is an example that > shows how to run the analyzer, and that you can jump to the tags that > it finds. The analyzer only rummages around in your header files, so > naturally that is what it will find. I see. > > If you ran this in the past, the analyzer used to gather in externally > defined methods, and would pick one of those instead of the in-class > prototype. I had removed that feature to make the analyzer run > faster, cutting analyzer execution time in about half. Restoring that > behavior is possible, but should be outside the analyzer, and in the > ia routine instead. Well, the use case is when you try to follow a code path through several functions. Then you are obviously only interested in the implementations. As there are also use cases for jumping to the declaration (e.g. in order to read the associated documentation), I think for the future it really makes sense to have two separate functions, to use depending on where you intend to go (at least until someone implements a jumping-follows-mind.el). As a workaround I think I can jump to the header file and then switch over to the corresponding .cpp file using an own function... yes, that'll do. > > It is certainly possible to get that list, and your thought about > using senator's key binding for C-c , J is correct. That routine > should do what you want. > > I had trouble getting this to work on some code I have at work, and > the problem was with the brutish search path routine. I'm still not > sure what's up with that, but it's on my todo list. When it is > working, just press TAB alot and it will show how to distinguish > between similarly named tags. Hmm, I mostly tried that because you suggested it in some other thread. However I think in most cases personally I'm faster with my workaround, mentioned above. So no need to hurry from my side :) Greets Michael |