Re: void-function semantic-java-expand-tag error while loading a java file
benruza <[email protected]> Tue, 12 Feb 2008 22:06:18 -0800
| Newsgroups | gmane.emacs.jdee |
|---|---|
| Message-ID | <[email protected]> |
Eric, I tried "make bootstrap" in the /usr/share/emacs22/site-lisp/cedet-1.0pre4 directory, but the problem is still there. BTW, I found that the missing function "semantic-java-expand-tag" is actually defined in "cedet-1.0pre4/semantic/bovine/semantic-java.el". So, AFTER I got the "void-function" error, if I load-file "semantic-java.el", then the problem goes away, and I can load .java files without error. But this is a painful workaround. Any idea? Thanks, Ben Eric M. Ludlam wrote: > It looks like part of CEDET's support for java didn't load. It might > be worth doing a "make bootstrap" for CEDET to make sure everything > rebuilds. > > Eric > > > >>>> benruza <[email protected]> seems to think that: >>>> >> When I try to load a java file, I got the following error (see the stack >> dump). Can you help? Here are the information about my Emacs/JDEE >> environment. >> >> host platform: Linux river 2.6.22-14-generic #1 SMP Fri Feb 1 04:59:50 >> UTC 2008 i686 GNU/Linux >> JDEE version: JDE 2.3.5.1 >> Emacs version: GNU Emacs 22.1.1 (i486-pc-linux-gnu, GTK+ Version 2.12.0) >> of 2007-11-06 on terranova, modified by Ubuntu >> My .emacs file: see the attachment >> Contents of the backtrace buffer (see below) >> Contents of the |*messages*| buffer (see below) >> >> Thanks, >> >> Ben >> ===================================================== >> Debugger entered--Lisp error: (void-function semantic-java-expand-tag) >> semantic-java-expand-tag(("org.apache.hadoop.fs" package nil nil [809 >> 838])) >> funcall(semantic-java-expand-tag ("org.apache.hadoop.fs" package nil >> nil [809 838])) >> (or (funcall semantic-tag-expand-function tag) (list tag)) >> (if semantic-tag-expand-function (or (funcall >> semantic-tag-expand-function tag) (list tag)) (list tag)) >> (if (semantic--tag-expanded-p tag) tag (condition-case nil (let ... >> ... ...) (error ... ... nil)) (unless semantic-tag-expand-function (setq >> semantic-tag-expand-function semantic-expand-nonterminal)) (if >> semantic-tag-expand-function (or ... ...) (list tag))) >> semantic--tag-expand(("org.apache.hadoop.fs" package nil nil [809 838])) >> (mapcar (function (lambda ... ... tag)) (semantic--tag-expand tag)) >> (setq tag (mapcar (function ...) (semantic--tag-expand tag)) result >> (append tag result)) >> (if (car tag) (setq tag (mapcar ... ...) result (append tag result))) >> (if tag (if (car tag) (setq tag ... result ...)) (if returnonerror >> (setq stream nil) (setq semantic-unmatched-syntax-cache ...))) >> (while stream (setq nontermsym (semantic-parse-stream stream nonterm) >> tag (car ...)) (if (not nontermsym) (error "Parse error @ %d" ...)) (if >> (eq ... stream) (error "Parser error: Infinite loop?")) (if tag (if ... >> ...) (if returnonerror ... ...)) (setq stream (car nontermsym)) (if >> stream (if ... ... ...))) >> (let ((result nil) (case-fold-search semantic-case-fold) nontermsym >> tag) (while stream (setq nontermsym ... tag ...) (if ... ...) (if ... >> ...) (if tag ... ...) (setq stream ...) (if stream ...)) result) >> semantic-repeat-parse-whole-stream(((PACKAGE 809 . 816) (IDENTIFIER >> 817 . 820) (DOT 820 . 821) (IDENTIFIER 821 . 827) (DOT 827 . 828) >> (IDENTIFIER 828 . 834) (DOT 834 . 835) (IDENTIFIER 835 . 837) (SEMICOLON >> 837 . 838) (IMPORT 840 . 846) (IDENTIFIER 847 . 851) (DOT 851 . 852) >> (IDENTIFIER 852 . 855) (DOT 855 . 856) (MULT 856 . 857) (SEMICOLON 857 . >> 858) (IMPORT 859 . 865) (IDENTIFIER 866 . 870) (DOT 870 . 871) >> (IDENTIFIER 871 . 873) (DOT 873 . 874) (MULT 874 . 875) (SEMICOLON 875 . >> 876) (IMPORT 878 . 884) (IDENTIFIER 885 . 888) (DOT 888 . 889) >> (IDENTIFIER 889 . 895) (DOT 895 . 896) (IDENTIFIER 896 . 902) (DOT 902 . >> 903) (IDENTIFIER 903 . 907) (DOT 907 . 908) (IDENTIFIER 908 . 921) >> (SEMICOLON 921 . 922) (PUBLIC 1094 . 1100) (CLASS 1101 . 1106) >> (IDENTIFIER 1107 . 1111) (IMPLEMENTS 1112 . 1122) (IDENTIFIER 1123 . >> 1133) (BRACE_BLOCK 1134 . 9456)) nil nil) >> (nreverse (semantic-repeat-parse-whole-stream (or ... ...) nonterminal >> returnonerror)) >> semantic-parse-region-default(1 9457 nil nil nil) >> (if override (funcall override start end nonterminal depth >> returnonerror) (semantic-parse-region-default start end nonterminal >> depth returnonerror)) >> (let ((override ...)) (if override (funcall override start end >> nonterminal depth returnonerror) (semantic-parse-region-default start >> end nonterminal depth returnonerror))) >> semantic-parse-region(1 9457) >> (setq res (semantic-parse-region (point-min) (point-max))) >> (progn (setq res (semantic-parse-region ... ...)) (working-status t)) >> (unwind-protect (progn (setq res ...) (working-status t)) (setq >> working-mode-line-message nil) (if working-use-echo-area-p (message >> working-current-message) (working-mode-line-update) (sit-for 0))) >> (let ((working-current-message ...) (working-message ...) >> (working-donestring "done") (working-ref1 0) (working-last-percent 0)) >> (unwind-protect (progn ... ...) (setq working-mode-line-message nil) (if >> working-use-echo-area-p ... ... ...))) >> (working-status-forms (semantic-parser-working-message (buffer-name)) >> "done" (setq res (semantic-parse-region ... ...)) (working-status t)) >> (cond ((semantic-parse-tree-needs-update-p) (setq res ...) (if ... ... >> ... ...)) ((semantic-parse-tree-needs-rebuild-p) (working-status-forms >> ... "done" ... ...) (let ... ...) (semantic--tag-link-list-to-buffer >> res) (semantic--set-buffer-cache res))) >> (let* ((gc-cons-threshold ...) (semantic-lex-block-streams nil) (res >> nil)) (garbage-collect) (cond (... ... ...) (... ... ... ... ...))) >> (and (semantic-active-p) (run-hook-with-args-until-failure (quote >> semantic-before-toplevel-bovination-hook)) >> (run-hook-with-args-until-failure (quote >> semantic--before-fetch-tags-hook)) (not >> (semantic-parse-tree-unparseable-p)) (not >> (semantic-parse-tree-up-to-date-p)) (let* (... ... ...) >> (garbage-collect) (cond ... ...))) >> semantic-fetch-tags() >> jde-parse-semantic-default-setup() >> run-hooks(semantic-init-hooks) >> (progn (setq semantic-new-buffer-fcn-was-run t) (semantic-lex-init) >> (semantic-clear-toplevel-cache) (run-hooks (quote >> semantic-init-db-hooks)) (run-hooks (quote semantic-init-hooks))) >> (if (and semantic--parse-table (not ...) (not ...)) (progn (setq >> semantic-new-buffer-fcn-was-run t) (semantic-lex-init) >> (semantic-clear-toplevel-cache) (run-hooks ...) (run-hooks ...))) >> (when (and semantic--parse-table (not ...) (not ...)) (setq >> semantic-new-buffer-fcn-was-run t) (semantic-lex-init) >> (semantic-clear-toplevel-cache) (run-hooks (quote >> semantic-init-db-hooks)) (run-hooks (quote semantic-init-hooks))) >> semantic-new-buffer-fcn() >> run-hooks(mode-local-init-hook) >> (lambda nil (activate-mode-local-bindings) (run-hooks (quote >> mode-local-init-hook)))() >> funcall((lambda nil (activate-mode-local-bindings) (run-hooks (quote >> mode-local-init-hook)))) >> (progn (funcall function)) >> (if (or (not predicate) (funcall predicate)) (progn (funcall function))) >> (when (or (not predicate) (funcall predicate)) (funcall function)) >> (save-current-buffer (set-buffer b) (when (or ... ...) (funcall >> function))) >> (with-current-buffer b (when (or ... ...) (funcall function))) >> (and (buffer-live-p b) (buffer-file-name b) (with-current-buffer b >> (when ... ...))) >> (while --cl-dolist-temp-- (setq b (car --cl-dolist-temp--)) (and >> (buffer-live-p b) (buffer-file-name b) (with-current-buffer b ...)) >> (setq --cl-dolist-temp-- (cdr --cl-dolist-temp--))) >> (let ((--cl-dolist-temp-- ...) b) (while --cl-dolist-temp-- (setq b >> ...) (and ... ... ...) (setq --cl-dolist-temp-- ...)) nil) >> (catch (quote --cl-block-nil--) (let (... b) (while --cl-dolist-temp-- >> ... ... ...) nil)) >> (cl-block-wrapper (catch (quote --cl-block-nil--) (let ... ... nil))) >> (block nil (let (... b) (while --cl-dolist-temp-- ... ... ...) nil)) >> (dolist (b (or buffers ...)) (and (buffer-live-p b) (buffer-file-name >> b) (with-current-buffer b ...))) >> mode-local-map-file-buffers((lambda nil (activate-mode-local-bindings) >> (run-hooks (quote mode-local-init-hook))) (lambda nil (not >> (mode-local-initialized-p))) (#<buffer Path.java>)) >> (let ((buffers mode-local-changed-mode-buffers)) (setq >> mode-local-changed-mode-buffers nil) (mode-local-map-file-buffers >> (function ...) (function ...) buffers)) >> mode-local-post-major-mode-change() >> run-hooks(find-file-hook) >> after-find-file(nil t) >> find-file-noselect-1(#<buffer Path.java> "~/src/Path.java" nil nil >> "~/src/Path.java" (4489218 2050)) >> find-file-noselect("~/src/Path.java" nil nil t) >> find-file("~/src/Path.java" t) >> call-interactively(find-file) >> >> >> >> ("/usr/bin/emacs22-gtk") >> Loading 00debian-vars... >> No /etc/mailname. Reverting to default... >> Loading 00debian-vars...done >> Loading /etc/emacs22/site-start.d/35elib-startup.el (source)...done >> Loading /etc/emacs/site-start.d/50cedet-common.el (source)... >> Loading advice...done >> Loading /etc/emacs/site-start.d/50cedet-common.el (source)...done >> Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)... >> Loading debian-ispell... >> Loading /var/cache/dictionaries-common/emacsen-ispell-default.el >> (source)...done >> Loading debian-ispell...done >> Loading /var/cache/dictionaries-common/emacsen-ispell-dicts.el >> (source)...done >> Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)...done >> Loading /etc/emacs/site-start.d/50eieio.el (source)...done >> Loading /etc/emacs/site-start.d/50psvn.el (source)...done >> Loading /etc/emacs/site-start.d/51ede.el (source)...done >> Loading /etc/emacs/site-start.d/51speedbar.el (source)...done >> Loading /etc/emacs/site-start.d/52semantic.el (source)...done >> Loading /usr/share/emacs22/site-lisp/eshell/eshell-2.4.2/eshell-auto.el >> (source)...done >> Loading regexp-opt...done >> Loading derived...done >> Loading /usr/share/emacs22/site-lisp/cedet-1.0pre4/common/cedet.el >> (source)... >> "/usr/share/emacs22/site-lisp/cedet-1.0pre4/common/" added to `load-path' >> Loading cl-macs...done >> Setting up cedet...done >> Setting up cogre...done >> Setting up ede... >> Loading /usr/share/emacs/22.1/site-lisp/cedet-1.0pre4/ede/ede.el (source)... >> Loading >> /usr/share/emacs/22.1/site-lisp/cedet-1.0pre4/ede/ede-speedbar.el >> (source)...done >> Loading /usr/share/emacs/22.1/site-lisp/cedet-1.0pre4/ede/ede.el >> (source)...done >> Setting up ede...done >> Setting up eieio...done >> Setting up semantic...done >> Setting up speedbar...done >> Setting up cedet-contrib...done >> Loading /usr/share/emacs22/site-lisp/cedet-1.0pre4/common/cedet.el >> (source)...done >> jde-java-font-lock: building names cache...empty >> Loading bytecomp...done >> Loading byte-opt...done >> Loading cl-extra...done >> Loading cl-seq...done >> Loading time...done >> Loading semantic-el...done >> For information about the GNU Project and its goals, type C-h C-p. [2 times] >> Loading >> /usr/share/emacs/22.1/site-lisp/cedet-1.0pre4/semantic/wisent/wisent-java-tags.el >> (source)...done >> Setting customized JDE variables to startup values... >> Loading >> /usr/share/emacs/22.1/site-lisp/cedet-1.0pre4/semantic/semantic-edit.el >> (source)...done >> Loading debug...done >> Entering debugger... >> byte-code: Beginning of buffer >> byte-code: Beginning of buffer >> >> ;;=========================================================================== >> ;; System settings >> ;;=========================================================================== >> ;(set-frame-font "-*-Courier New-normal-r-*-*-12-90-*-*-c-*-*-ansi-") >> (set-frame-font "7x13") >> (setq default-major-mode 'text-mode) >> (setq text-mode-hook '(lambda () (auto-fill-mode 1))) >> (auto-fill-mode 1) >> >> (put 'suspend-emacs 'disabled nil) >> (put 'eval-expression 'disabled nil) >> >> (require 'paren) ;;highlight matching parentheses whenever point >> >> ;; make tab be replaced by spaces >> ;;(setq indent-tabs-mode nil) >> >> ;; This will shows different color for language-specific reserved words >> (global-font-lock-mode t) >> (setq font-lock-maximum-decoration t) >> >> ;;---------- Global key settings ---------- >> (global-set-key "\C-z" 'goto-line) >> (global-set-key "\C-\\" 'delete-horizontal-space) >> (global-set-key [home] 'beginning-of-line) >> (global-set-key [end] 'end-of-line) >> (global-set-key [C-tab] 'toggle-tab-width) >> (defun toggle-tab-width () >> (interactive) >> (cond ((= tab-width 4) (setq tab-width 8)) >> ((= tab-width 8) (setq tab-width 4))) >> (recenter) >> ) >> >> (add-to-list 'load-path (expand-file-name "/usr/share/emacs22/site-lisp")) >> >> ;;---------- restore SPACE as filename auto-complete >> (progn >> (define-key minibuffer-local-completion-map " " 'minibuffer-complete-word) >> (define-key minibuffer-local-filename-completion-map " " 'minibuffer-complete-word) >> (define-key minibuffer-local-must-match-filename-map " " 'minibuffer-complete-word)) >> >> ;;---------- set file name auto-complete to case in-sensitive >> (setq read-file-name-completion-ignore-case t) >> >> ;;---------- backup-dir >> (setq make-backup-files nil) >> >> ;;---------- EShell >> (add-to-list 'load-path (expand-file-name "/usr/share/emacs22/site-lisp/eshell/eshell-2.4.2")) >> (load "eshell-auto") >> >> ;;---------- java-find >> (require 'java-find) >> >> ;;---------- Prompt before exiting Emacs ---------- >> (setq kill-emacs-query-functions >> (cons (lambda () (yes-or-no-p "Really kill Emacs? ")) >> kill-emacs-query-functions)) >> >> ;;--------------------------------------------------------------------------- >> ;; C-mode setttings >> >> (add-hook 'c-mode-hook 'ben-c-mode-hook) >> (defun ben-c-mode-hook () >> (require 'cc-mode) >> (c-initialize-cc-mode) >> (c-set-style "stroustrup") >> (setq tab-width 4) >> (setq indent-tabs-mode t) >> (setq c-basic-offset 4) >> (c-set-offset 'substatement-open 0) >> (c-set-offset 'inline-open 0) >> (setq c-tab-always-indent t) >> ) >> >> ;;---------- ispell (aspell) ---------- >> (setq-default ispell-progra-name "aspell") >> >> ;;---------- PHP ---------- >> (require 'php-mode) >> >> ;;---------- Mako ---------- >> (add-to-list 'auto-mode-alist '("\\.mako\\'" . html-mode)) >> (autoload 'html-mode "html-mode" "HTML editing mode." t) >> >> ;;;=========================================================================== >> ;; Ubuntu JDE Settings >> ;;=========================================================================== >> (setq debug-on-error t) >> (add-to-list 'load-path (expand-file-name "/usr/share/emacs22/site-lisp/jde-2.3.5.1/lisp")) >> (add-to-list 'load-path (expand-file-name "/usr/share/emacs22/site-lisp/cedet-1.0pre4/common")) >> (add-to-list 'load-path (expand-file-name "/usr/share/emacs22/site-lisp/elib-1.0")) >> (load-file (expand-file-name "/usr/share/emacs22/site-lisp/cedet-1.0pre4/common/cedet.el")) >> (require 'jde) >> >> (defun my-jde-mode-hook () >> (setq c-basic-offset 2)) >> (add-hook 'jde-mode-hook 'my-jde-mode-hook) >> >> ;;=========================================================================== >> ;; Python Settings >> ;;=========================================================================== >> (add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode)) >> (autoload 'python-mode "python-mode" "Python editing mode." t) >> >> ;;=========================================================================== >> ;; PSGML setup >> ;;=========================================================================== >> ; Add PSGML to load-path so Emacs can find it. >> ; Note the forward slashes in the path... this is platform-independant so I >> ; would suggest using them over back-slahes. If you use back-slashes, they >> ; MUST BE doubled, as Emacs treats backslash as an escape character. >> (setq load-path >> (append (list nil "/usr/share/emacs22/site-lisp/psgml-1.2.4") >> load-path)) >> ;;(autoload 'sgml-mode "psgml" "Major mode to edit SGML files." t) >> ;;(autoload 'xml-mode "psgml" "Major mode to edit XML files." t) >> ;;(load "xhtml/xhtml_setup") >> >> (cd "~/") >> (display-time) >> (custom-set-variables >> ;; custom-set-variables was added by Custom. >> ;; If you edit it by hand, you could mess it up, so be careful. >> ;; Your init file should contain only one such instance. >> ;; If there is more than one, they won't work right. >> '(browse-url-browser-function (quote browse-url-default-windows-browser)) >> '(browse-url-new-window-flag t) >> '(display-time-mode t) >> '(xslt-process-default-processor (quote (Saxon)))) >> (custom-set-faces >> ;; custom-set-faces was added by Custom. >> ;; If you edit it by hand, you could mess it up, so be careful. >> ;; Your init file should contain only one such instance. >> ;; If there is more than one, they won't work right. >> ) >> >> > >