emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs 24 semantic C++ completion problem


From: Eric M. Ludlam
Subject: Re: Emacs 24 semantic C++ completion problem
Date: Thu, 29 Dec 2011 17:03:13 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.3a1pre) Gecko/20091222 Shredder/3.1a1pre

Hi,

When mysterious problems occur with the smart completion engine, it is often a challenge to figure out what is going on. - ie - is there a bug in Semantic, a setup issue, etc.

I always recommend using `semantic-analyze-debug-assist', used while point is in a location that caused the completion problem. Unfortunately, this command doesn't have an autoload cookie in Emacs, so you need to first:

M-x load-library RET semantic/analyze/debug RET

to make it available. Hopefully its advice can help fix any configuration issues. I'll guess you need to create a small EDE project to point Semantic to your headers. Most likely using an example of ede-cpp-root project type.

For the 2nd problem you list, that seems more like a bug that may have been fixed with the version of CEDET from the CEDET bzr repository. There have been a few bug fixes there since CEDET was last merged into Emacs. If setting up EDE fixes the first but not the second, you should check w/ the CEDET bzr repository.

Eric

On 12/29/2011 01:32 PM, Vyacheslav Gonakhchyan wrote:
Hi,

I have a problem with C++ completion via builtin semantic.
Environment: Linux 3.1.5, Emacs 24.0.92.1(latest bzr build), attached
config file.


I use command semantic-ia-complete-symbol and get confusing errors(I cut
the some line - they are too long):

*1)*
Debugger entered--Lisp error: (error "Cannot find types for `\"mCamera\"'")
signal(error ("Cannot find types for `\"mCamera\"'"))
error("Cannot find types for `%s'" "\"mCamera\"")
semantic-analyze-possible-completions-default([object
semantic-analyze-context...
semantic-analyze-possible-completions([object semantic-analyze-context
"context" (690 . 690) ("mCamera" "")...
semantic-ia-complete-symbol(690)
call-interactively(semantic-ia-complete-symbol nil nil)

*2)*
Debugger entered--Lisp error: (wrong-type-argument
semantic-find-tags-by-scope-protection parent semantic-tag-class type)
signal(wrong-type-argument (semantic-find-tags-by-scope-protection
parent semantic-tag-class type))
semantic-find-tags-by-scope-protection(protected ("WindowEventListener"
variable
semantic-analyze-scoped-type-parts(("WindowEventListener" variable
(:type ("_OgreExport" type
...(table dump)
semantic-analyze-scoped-inherited-tag-map(("BaseApplication" type
(:superclasses...
Semantic-analyze-scoped-inherited-tag-map(("TutorialApplication" type
(:superclasses (("BaseApplication"
semantic-analyze-scoped-inherited-tags(("TutorialApplication" type
(:superclasses (("BaseApplication" type...
semantic-analyze-scoped-type-parts(("TutorialApplication" type
(:superclasses (("BaseApplication" type...
semantic-analyze-scoped-tags-default(nil [object semantic-scope-cache
"Cache" [object semanticdb-table "Tut.cpp"...
semantic-analyze-scoped-tags(nil [object semantic-scope-cache "Cache"
[object semanticdb-table "Tut.cpp"...
semantic-calculate-scope(685)
semantic-analyze-current-context-default(685)
semantic-analyze-current-context(685)
semantic-ia-complete-symbol(685)
call-interactively(semantic-ia-complete-symbol nil nil)


I'm trying to make completion work for C++ and I need your advice.
Debugging these errors for newbie such as myself is tedious:(
Also please answer if you know workaround. If you have a working .emacs
config - it might help too.

Thanks,
Slava



KGN1c3RvbS1zZXQtdmFyaWFibGVzCiA7OyBjdXN0b20tc2V0LXZhcmlhYmxlcyB3YXMgYWRkZWQg
YnkgQ3VzdG9tLgogOzsgSWYgeW91IGVkaXQgaXQgYnkgaGFuZCwgeW91IGNvdWxkIG1lc3MgaXQg
dXAsIHNvIGJlIGNhcmVmdWwuCiA7OyBZb3VyIGluaXQgZmlsZSBzaG91bGQgY29udGFpbiBvbmx5
IG9uZSBzdWNoIGluc3RhbmNlLgogOzsgSWYgdGhlcmUgaXMgbW9yZSB0aGFuIG9uZSwgdGhleSB3
b24ndCB3b3JrIHJpZ2h0LgogJyhlY2Itb3B0aW9ucy12ZXJzaW9uICIyLjQwIikKICcoZWNiLXBy
aW1hcnktc2Vjb25kYXJ5LW1vdXNlLWJ1dHRvbnMgKHF1b3RlIG1vdXNlLTEtLUMtbW91c2UtMSkp
CiAnKGluaGliaXQtc3RhcnR1cC1zY3JlZW4gdCkKICcoc2VtYW50aWMtYy1kZXBlbmRlbmN5LXN5
c3RlbS1pbmNsdWRlLXBhdGggKHF1b3RlICgiL3Vzci9pbmNsdWRlIiAiL3Vzci9pbmNsdWRlL09H
UkUiICIvdXNyL2luY2x1ZGUvT0lTIikpKSkKKGN1c3RvbS1zZXQtZmFjZXMKIDs7IGN1c3RvbS1z
ZXQtZmFjZXMgd2FzIGFkZGVkIGJ5IEN1c3RvbS4KIDs7IElmIHlvdSBlZGl0IGl0IGJ5IGhhbmQs
IHlvdSBjb3VsZCBtZXNzIGl0IHVwLCBzbyBiZSBjYXJlZnVsLgogOzsgWW91ciBpbml0IGZpbGUg
c2hvdWxkIGNvbnRhaW4gb25seSBvbmUgc3VjaCBpbnN0YW5jZS4KIDs7IElmIHRoZXJlIGlzIG1v
cmUgdGhhbiBvbmUsIHRoZXkgd29uJ3Qgd29yayByaWdodC4KICkKCihhdXRvbG9hZCAncGhwLW1v
ZGUgInBocC1tb2RlLmVsIiAiUGhwIG1vZGUuIiB0KQooc2V0cSBhdXRvLW1vZGUtYWxpc3QgKGFw
cGVuZCAnKCgiLyouXC5waHBbMzQ1XT8kIiAuIHBocC1tb2RlKSkgYXV0by1tb2RlLWFsaXN0KSkK
Cjs7Q3VzdG9tIGNvZGUKKGFkZC10by1saXN0ICdsb2FkLXBhdGggKGV4cGFuZC1maWxlLW5hbWUg
In4vLmVtYWNzLmQvbGlzcC8iKSkKKGFkZC10by1saXN0ICdsb2FkLXBhdGggKGV4cGFuZC1maWxl
LW5hbWUgIn4vd29yay9lbWFjcy9lY2IvIikpCgo7OyBjZWRldAoocmVxdWlyZSAnc2VtYW50aWMp
CihyZXF1aXJlICdzZW1hbnRpYy9zYikKKHJlcXVpcmUgJ3NyZWNvZGUpCihnbG9iYWwtZWRlLW1v
ZGUgMSkKKHNlbWFudGljLW1vZGUgMSkKKGdsb2JhbC1zZW1hbnRpY2RiLW1pbm9yLW1vZGUgMSkK
KGdsb2JhbC1zZW1hbnRpYy1pZGxlLXNjaGVkdWxlci1tb2RlIDEpCihnbG9iYWwtc2VtYW50aWMt
aWRsZS1jb21wbGV0aW9ucy1tb2RlIDEpCihnbG9iYWwtc2VtYW50aWMtZGVjb3JhdGlvbi1tb2Rl
IDEpCihnbG9iYWwtc2VtYW50aWMtaGlnaGxpZ2h0LWZ1bmMtbW9kZSAxKQooZ2xvYmFsLXNlbWFu
dGljLXN0aWNreWZ1bmMtbW9kZSAtMSkKKGdsb2JhbC1zZW1hbnRpYy1pZGxlLXN1bW1hcnktbW9k
ZSAxKQooZ2xvYmFsLXNlbWFudGljLW1ydS1ib29rbWFyay1tb2RlIDEpCihzZW1hbnRpY2RiLWVu
YWJsZS1nbnUtZ2xvYmFsLWRhdGFiYXNlcyAnYy1tb2RlKQooc2VtYW50aWNkYi1lbmFibGUtZ251
LWdsb2JhbC1kYXRhYmFzZXMgJ2MrKy1tb2RlKQooc2V0LWRlZmF1bHQgJ3NlbWFudGljLWNhc2Ut
Zm9sZCB0KQoKCjs7IGVjYgooc2V0cSBzdGFjay10cmFjZS1vbi1lcnJvciB0KSA7V0EgZm9yIHZv
aWQtdmFyaWFibGUgZXJyb3IKKHJlcXVpcmUgJ2VjYikKCjs7VHVybiBEZWJ1ZyBPTgooc2V0cSBk
ZWJ1Zy1vbi1lcnJvciB0KQoKOztDUFAgcHJvamVjdAooZWRlLWNwcC1yb290LXByb2plY3QgIk9n
cmVUZXJyYWluIgogICAgICAgICAgICAgICAgOm5hbWUgIk9ncmVUZXJyYWluIFByb2plY3QiCiAg
ICAgICAgICAgICAgICA6ZmlsZSAifi93b3JrL2NwcC9PZ3JlVGVycmFpbi9DTWFrZUxpc3RzLnR4
dCIKCQkJCTppbmNsdWRlLXBhdGggJygiLyIpCiAgICAgICAgICAgICAgICA6c3lzdGVtLWluY2x1
ZGUtcGF0aCAnKCIvdXNyL2luY2x1ZGUvT0dSRSIgCgkJCQkgICAgICAgIi91c3IvaW5jbHVkZS9P
R1JFL1BsdWdpbnMiCgkJCQkgICAgICAgIi91c3IvaW5jbHVkZS9PR1JFL1RlcnJhaW4iCgkJCQkg
ICAgICAgIi91c3IvaW5jbHVkZS9PSVMiKQogICAgICAgICAgICAgIAkpCgo7O3NlbWFudGljIGtl
eSBiaW5kaW5ncwooZGVmdW4gbXktY2VkZXQtaG9vayAoKQogIChsb2NhbC1zZXQta2V5IFsoY29u
dHJvbCByZXR1cm4pXSAnc2VtYW50aWMtaWEtY29tcGxldGUtc3ltYm9sKQogIChsb2NhbC1zZXQt
a2V5ICJcQy1jPyIgJ3NlbWFudGljLWlhLWNvbXBsZXRlLXN5bWJvbC1tZW51KQogIChsb2NhbC1z
ZXQta2V5ICJcQy1jPiIgJ3NlbWFudGljLWNvbXBsZXRlLWFuYWx5emUtaW5saW5lKQogIChsb2Nh
bC1zZXQta2V5ICJcQy1jcCIgJ3NlbWFudGljLWFuYWx5emUtcHJvdG8taW1wbC10b2dnbGUpKQoo
YWRkLWhvb2sgJ2MtbW9kZS1jb21tb24taG9vayAnbXktY2VkZXQtaG9vaykKCjsoZGVmdW4gbXkt
Yy1tb2RlLWNlZGV0LWhvb2sgKCkKOyAobG9jYWwtc2V0LWtleSAiLiIgJ3NlbWFudGljLWNvbXBs
ZXRlLXNlbGYtaW5zZXJ0KQo7IChsb2NhbC1zZXQta2V5ICI+IiAnc2VtYW50aWMtY29tcGxldGUt
c2VsZi1pbnNlcnQpKQo7KGFkZC1ob29rICdjLW1vZGUtY29tbW9uLWhvb2sgJ215LWMtbW9kZS1j
ZWRldC1ob29rKQoK



reply via email to

[Prev in Thread] Current Thread [Next in Thread]