Re[1]: [cedet-semantic] Help getting semantic to use namespaces
Brought to you by:
zappo
From: Eric M. L. <er...@si...> - 2005-08-23 11:38:25
|
Hi, Thanks for the example. I haven't done any work at resolving the specifics of C++ namespace issues yet. While there is infrastructure there to handle multiple scopes, the work of parsing out namespaces from using statements, or b::name type syntax is not. As I am starting to work on C++ code like that, however, it is on the top of my list of analyzer things to do... after I get 1.0 out that is. If someone wants to tackle this problem, I'd be happy to help. Eric >>> Nathan Addy <nat...@gm...> seems to think that: >Hi, > >I am a relative emacs newbie and a total semantic newbie, so I >apologize if this is a pretty obvious question/problem. > >Today my goal has been to take an out of the box emacs installation >and get the analyse-possible-completions type stuff to work with a >medium sized project I'm joining. I downloaded semantic by installing >the latest cedet and then ran something like > >(load-file "~/bin/emacs/cedet-1.0pre3/semantic/semantic-load.el") >(setq semantic-load-turn-everything-on t) >in my .emacs. > >To test it out I entered in some simple cpp file that said something like > >class foo >{ >public: >int m_int; >}; >namespace b >{ >class bar >{ >public: >int m_int; >}; >} >int main(int argc, char** argv) >{ >foo alpha; >b::bar beta; >... >} >Where all of this is contained in one single cpp file. > >The semantic-complete-analyse-inline will work exactly the way I would >expect when I use it after typing "alpha." It completes it to >alpha.m_int and will expend to the first ambiguity when I give foo >more public members, etc. None of this works for beta though. When I >type "beta." and execute the function, it offers for completion all >variables at local scope: main, argc, argv, alpha, and beta. > >What, if anything, can I do to make semantic resolve names through >namespaces? Thanks very much in advance. [ ... ] -- Eric Ludlam: za...@gn..., er...@si... Home: http://www.ludlam.net Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net GNU: www.gnu.org |