Re[1]: void-function semantic-java-expand-tag error while loading a java file

"Eric M. Ludlam" <[email protected]> Tue, 12 Feb 2008 16:01:40 -0500
Newsgroups gmane.emacs.jdee
Message-ID <[email protected]>
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.
> )
>

-- 
          Eric Ludlam:                       [email protected]
   Siege: www.siege-engine.com          Emacs: http://cedet.sourceforge.net