Thread: [CEDET-devel] semantic-complete-jump-local fails
Brought to you by:
zappo
From: Stephen B. <Ste...@gm...> - 2006-09-24 14:05:24
|
I'm using cedet from the current CVS repository on current CVS Emacs. When I try to use semantic-complete-jump-local it throws the Lisp error: (void-function semanticdb-find-result-with-nil-p). Backtrace is below. To reproduce: 1. emacs -Q 2. M-: (load-file "/<path to>/cedet/common/cedet.el") 3. M-: (semantic-load-enable-code-helpers) 4. Visit /<path to>/cedet/common/cedet.el 5. Type `C-c,j' 6. At the "Symbol: " prompt type `ce<RETURN>' This is where the error is raised. I couldn't get anywhere with edebug. Debugger entered--Lisp error: (void-function semanticdb-find-result-with-nil-p) (semanticdb-find-result-with-nil-p object) (or (null object) (semanticdb-find-result-with-nil-p object)) eval((or (null object) (semanticdb-find-result-with-nil-p object))) typep((([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>))) (or null semanticdb-find-result-with-nil)) eieio-perform-slot-validation((or null semanticdb-find-result-with-nil) (([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>)))) eieio-validate-slot-value(semantic-collector-buffer-deep 4 (([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>))) cache) eieio-oset([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] cache (([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>)))) semantic-collector-buffer-deep([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) apply(semantic-collector-buffer-deep [object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) eieio-generic-call(semantic-collector-calculate-cache ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound])) semantic-collector-calculate-cache([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) semantic-collector-abstract([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) apply(semantic-collector-abstract [object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) eieio-generic-call(semantic-collector-get-cache ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound])) semantic-collector-get-cache([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) semantic-collector-abstract([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil) apply(semantic-collector-abstract ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil)) eieio-generic-call(semantic-collector-calculate-completions ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil)) semantic-collector-calculate-completions([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil) semantic-complete-default-to-tag(nil) semantic-complete-read-tag-engine([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] [object semantic-displayor-traditional-with-focus-highlight "simple" nil unbound unbound] "Symbol: " nil nil nil) semantic-complete-read-tag-buffer-deep("Symbol: ") semantic-complete-jump-local() call-interactively(semantic-complete-jump-local) |
From: Eric M. L. <er...@si...> - 2006-09-24 14:28:26
|
Hi, I wonder if you have an older version of semantic on your path, a misscompiled semanticdb-find.elc, or if perhaps CVS failed to download all of semanticdb-find.el, as that function has been in that file for a while. Eric >>> Stephen Berman <Ste...@gm...> seems to think that: >I'm using cedet from the current CVS repository on current CVS Emacs. >When I try to use semantic-complete-jump-local it throws the Lisp error: >(void-function semanticdb-find-result-with-nil-p). Backtrace is >below. To reproduce: >1. emacs -Q >2. M-: (load-file "/<path to>/cedet/common/cedet.el") >3. M-: (semantic-load-enable-code-helpers) >4. Visit /<path to>/cedet/common/cedet.el >5. Type `C-c,j' >6. At the "Symbol: " prompt type `ce<RETURN>' >This is where the error is raised. I couldn't get anywhere with edebug. > >Debugger entered--Lisp error: (void-function semanticdb-find-result-with-nil-p) > (semanticdb-find-result-with-nil-p object) > (or (null object) (semanticdb-find-result-with-nil-p object)) > eval((or (null object) (semanticdb-find-result-with-nil-p object))) > typep((([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>))) (or null semanticdb-find-result-with-nil)) > eieio-perform-slot-validation((or null semanticdb-find-result-with-nil) (([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>)))) > eieio-validate-slot-value(semantic-collector-buffer-deep 4 (([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>))) cache) > eieio-oset([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] cache (([object semanticdb-table "cedet.el" [object semanticdb-project-database-file "common/" "/home/steve/lib/site-lisp/cedet/common/" semanticdb-table ... "/home/steve/lib/site-lisp/cedet/common/semantic.cache" "2.0" "2.0"] emacs-lisp-mode ... "cedet.el" nil unbound] ("cl" include nil nil #<overlay from 2178 to 2191 in cedet.el>) ("cedet-version" variable ... nil #<overlay from 2194 to 2254 in cedet.el>) ("cedet-packages" variable ... nil #<overlay from 2256 to 2698 in cedet.el>) ("cedet-version" function ... nil #<overlay from 2700 to 4455 in cedet.el>) ("let" code nil nil #<overlay from 4511 to 5792 in cedet.el>) ("cedet" package nil nil #<overlay from 5794 to 5810 in cedet.el>)))) > semantic-collector-buffer-deep([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) > apply(semantic-collector-buffer-deep [object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) > eieio-generic-call(semantic-collector-calculate-cache ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound])) > semantic-collector-calculate-cache([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) > semantic-collector-abstract([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) > apply(semantic-collector-abstract [object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) > eieio-generic-call(semantic-collector-get-cache ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound])) > semantic-collector-get-cache([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound]) > semantic-collector-abstract([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil) > apply(semantic-collector-abstract ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil)) > eieio-generic-call(semantic-collector-calculate-completions ([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil)) > semantic-collector-calculate-completions([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] #("memory" 0 6 (face font-lock-doc-face fontified t)) nil) > semantic-complete-default-to-tag(nil) > semantic-complete-read-tag-engine([object semantic-collector-buffer-deep "Symbol: " #<buffer cedet.el> nil unbound unbound unbound unbound unbound] [object semantic-displayor-traditional-with-focus-highlight "simple" nil unbound unbound] "Symbol: " nil nil nil) > semantic-complete-read-tag-buffer-deep("Symbol: ") > semantic-complete-jump-local() > call-interactively(semantic-complete-jump-local) [ ... ] -- 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 |
From: Stephen B. <Ste...@gm...> - 2006-09-24 23:03:05
|
On Sun, 24 Sep 2006 10:28:17 -0400 "Eric M. Ludlam" <er...@si...> wrote: > Hi, > > I wonder if you have an older version of semantic on your path, a > misscompiled semanticdb-find.elc, or if perhaps CVS failed to download > all of semanticdb-find.el, as that function has been in that file for > a while. The only semantic on my load-path is from CVS cedet. I haven't yet tried to byte-compile semanticdb-find.el again download it again from the CVS repository, but by pure luck I found out how to get semantic-complete-jump-local working: by loading semantic-cb.el[1]. That is, when I repeat the recipe I gave in my OP verbatim I still get the error, but if, prior to step 5 I visit semantic-cb.el and do `M-x eval-current-buffer' and then type `C-c,j', now completion works. I grepped the cedet directory for `(require 'semantic-cb)' and found it occurs only once, in semantic-load.el, in an eval-after-load "speedbar". So I repeated the first four steps of my recipe and then opened Speedbar, then went on to step 5, and lo and behold, completion worked again. But obviously it shouldn't be necessary to load Speedbar to use semantic-complete-jump-local, so there must be something else going on. (In fact, I had not opened Speedbar in my running Emacs session described in [1], so I don't know how semantic-cb.el got loaded there.) Do you have any ideas? Steve Berman Footnotes: [1] In fact, I hit upon loading semantic-cb.el because, after reading your followup to my posting, I tried semantic-complete-jump-local in my running Emacs session, and to my astonishment it worked (though it hadn't before). Then I tried my recipe with emacs -Q again[2], and again it failed. Then I compared the features of my running Emacs session with those of the fresh emacs -q, and it happens that the first seemingly relevant difference was the presence of semantic-cb.el in the former but not in the latter. [2] Here it is, for convenience: 1. emacs -Q 2. M-: (load-file "/<path to>/cedet/common/cedet.el") 3. M-: (semantic-load-enable-code-helpers) 4. Visit /<path to>/cedet/common/cedet.el 5. Type `C-c,j' 6. At the "Symbol: " prompt type `ce<RETURN>' |
From: Stephen B. <Ste...@gm...> - 2007-03-23 11:23:33
|
On Sun, 24 Sep 2006 10:28:17 -0400 "Eric M. Ludlam" <er...@si...> wrote: > Hi, > > I wonder if you have an older version of semantic on your path, a > misscompiled semanticdb-find.elc, or if perhaps CVS failed to download > all of semanticdb-find.el, as that function has been in that file for > a while. > > Eric > >>>> Stephen Berman <Ste...@gm...> seems to think that: >>I'm using cedet from the current CVS repository on current CVS Emacs. >>When I try to use semantic-complete-jump-local it throws the Lisp error: >>(void-function semanticdb-find-result-with-nil-p). Backtrace is >>below. To reproduce: >>1. emacs -Q >>2. M-: (load-file "/<path to>/cedet/common/cedet.el") >>3. M-: (semantic-load-enable-code-helpers) >>4. Visit /<path to>/cedet/common/cedet.el >>5. Type `C-c,j' >>6. At the "Symbol: " prompt type `ce<RETURN>' >>This is where the error is raised. I couldn't get anywhere with edebug. >> >>Debugger entered--Lisp error: (void-function semanticdb-find-result-with-nil-p) I still get this error with the above recipe using CVS Cedet from 2007-03-22 in GNU Emacs 22.0.96.3 (i686-pc-linux-gnu, GTK+ Version 2.10.6) of 2007-03-21 on escher. The only semantic on my load-path is ~/.emacs.d/site-lisp/cedet/semantic/ and byte-compiling reported no errors. -rw-r--r-- 1 steve users 36534 2007-03-22 11:00 semanticdb-find.el -rw-r--r-- 1 steve users 29940 2007-03-22 21:37 semanticdb-find.elc As I noted in my previous followup, as soon as semantic-cd is loaded, which happens, for example, by typing `M-h i', the error vanishes. Steve Berman |
From: Eric M. L. <er...@si...> - 2007-03-25 14:28:19
|
>>> Stephen Berman <Ste...@gm...> seems to think that: >On Sun, 24 Sep 2006 10:28:17 -0400 "Eric M. Ludlam" ><er...@si...> wrote: > >> Hi, >> >> I wonder if you have an older version of semantic on your path, a >> misscompiled semanticdb-find.elc, or if perhaps CVS failed to download >> all of semanticdb-find.el, as that function has been in that file for >> a while. >> >> Eric >> >>>>> Stephen Berman <Ste...@gm...> seems to think that: >>>I'm using cedet from the current CVS repository on current CVS Emacs. >>>When I try to use semantic-complete-jump-local it throws the Lisp error: >>>(void-function semanticdb-find-result-with-nil-p). Backtrace is >>>below. To reproduce: >>>1. emacs -Q >>>2. M-: (load-file "/<path to>/cedet/common/cedet.el") >>>3. M-: (semantic-load-enable-code-helpers) >>>4. Visit /<path to>/cedet/common/cedet.el >>>5. Type `C-c,j' >>>6. At the "Symbol: " prompt type `ce<RETURN>' >>>This is where the error is raised. I couldn't get anywhere with edebug. >>> >>>Debugger entered--Lisp error: (void-function semanticdb-find-result-with-nil-p) > >I still get this error with the above recipe using CVS Cedet from >2007-03-22 in GNU Emacs 22.0.96.3 (i686-pc-linux-gnu, GTK+ Version >2.10.6) of 2007-03-21 on escher. The only semantic on my load-path is >~/.emacs.d/site-lisp/cedet/semantic/ and byte-compiling reported no >errors. > > -rw-r--r-- 1 steve users 36534 2007-03-22 11:00 semanticdb-find.el > -rw-r--r-- 1 steve users 29940 2007-03-22 21:37 semanticdb-find.elc > >As I noted in my previous followup, as soon as semantic-cd is loaded, >which happens, for example, by typing `M-h i', the error vanishes. [ ... ] Hi, I can't reproduce the problem, but I have some guesses. I added some autoload cookies on some of the semanticdb-find-result-* functions in semantic/CVS which should fix this. Thanks for letting me know. Eric -- 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 |
From: Stephen B. <Ste...@gm...> - 2007-03-25 16:20:34
|
On Sun, 25 Mar 2007 10:28:06 -0400 "Eric M. Ludlam" <er...@si...> wrote: > I can't reproduce the problem, Strange. Could it have something to do with where Cedet is installed? I have it installed under my home directory, whereas Emacs is in /usr/local. But I can't see why that should matter... > but I have some guesses. I added > some autoload cookies on some of the semanticdb-find-result-* > functions in semantic/CVS which should fix this. Anyway, this fixes the problem for me, even if it remains puzzling why I had it and you (and apparently everybody else who uses this function) did not. Thanks! Steve Berman |