diff options
Diffstat (limited to 'lisp/cedet/semantic')
-rw-r--r-- | lisp/cedet/semantic/analyze.el | 2 | ||||
-rw-r--r-- | lisp/cedet/semantic/analyze/fcn.el | 2 | ||||
-rw-r--r-- | lisp/cedet/semantic/bovine/c.el | 73 | ||||
-rw-r--r-- | lisp/cedet/semantic/bovine/gcc.el | 6 | ||||
-rw-r--r-- | lisp/cedet/semantic/complete.el | 18 | ||||
-rw-r--r-- | lisp/cedet/semantic/db-el.el | 5 | ||||
-rw-r--r-- | lisp/cedet/semantic/db-file.el | 4 | ||||
-rw-r--r-- | lisp/cedet/semantic/db-find.el | 6 | ||||
-rw-r--r-- | lisp/cedet/semantic/db.el | 6 | ||||
-rw-r--r-- | lisp/cedet/semantic/decorate/include.el | 4 | ||||
-rw-r--r-- | lisp/cedet/semantic/ede-grammar.el | 2 | ||||
-rw-r--r-- | lisp/cedet/semantic/find.el | 9 | ||||
-rw-r--r-- | lisp/cedet/semantic/fw.el | 14 | ||||
-rw-r--r-- | lisp/cedet/semantic/grammar.el | 3 | ||||
-rw-r--r-- | lisp/cedet/semantic/sb.el | 12 | ||||
-rw-r--r-- | lisp/cedet/semantic/senator.el | 8 | ||||
-rw-r--r-- | lisp/cedet/semantic/sort.el | 2 | ||||
-rw-r--r-- | lisp/cedet/semantic/tag-ls.el | 66 | ||||
-rw-r--r-- | lisp/cedet/semantic/wisent/javat-wy.el | bin | 19300 -> 19273 bytes | |||
-rw-r--r-- | lisp/cedet/semantic/wisent/wisent.el | 4 |
20 files changed, 149 insertions, 97 deletions
diff --git a/lisp/cedet/semantic/analyze.el b/lisp/cedet/semantic/analyze.el index d1476111403..000193d4a55 100644 --- a/lisp/cedet/semantic/analyze.el +++ b/lisp/cedet/semantic/analyze.el @@ -800,7 +800,7 @@ CONTEXT's content is described in `semantic-analyze-current-context'." (semantic-analyze-pulse context) (with-output-to-temp-buffer "*Semantic Context Analysis*" (princ "Context Type: ") - (princ (object-name context)) + (princ (eieio-object-name context)) (princ "\n") (princ "Bounds: ") (princ (oref context bounds)) diff --git a/lisp/cedet/semantic/analyze/fcn.el b/lisp/cedet/semantic/analyze/fcn.el index 6ee85b298a2..42bc482a1df 100644 --- a/lisp/cedet/semantic/analyze/fcn.el +++ b/lisp/cedet/semantic/analyze/fcn.el @@ -255,7 +255,7 @@ Optional argument TYPE-DECLARATION is how TYPE was found referenced." (nexttype (semantic-analyze-dereference-metatype type scope type-declaration)) (idx 0)) (catch 'metatype-recursion - (while (and nexttype (not (eq (car nexttype) lasttype))) + (while (and nexttype (not (semantic-tag-similar-p (car nexttype) lasttype))) (setq lasttype (car nexttype) lasttypedeclaration (cadr nexttype)) (setq nexttype (semantic-analyze-dereference-metatype lasttype scope lasttypedeclaration)) diff --git a/lisp/cedet/semantic/bovine/c.el b/lisp/cedet/semantic/bovine/c.el index 7aa93a0c942..2f8cf08af3e 100644 --- a/lisp/cedet/semantic/bovine/c.el +++ b/lisp/cedet/semantic/bovine/c.el @@ -155,15 +155,16 @@ part of the preprocessor map.") ;; not be in a buffer. (semanticdb-refresh-table table t) (error (message "Error updating tables for %S" - (object-name table))))) + (eieio-object-name table))))) (setq filemap (append filemap (oref table lexical-table))) - ;; Update symbol obarray - (setq-mode-local c-mode - semantic-lex-spp-macro-symbol-obarray - (semantic-lex-make-spp-table - (append semantic-lex-c-preprocessor-symbol-map-builtin - semantic-lex-c-preprocessor-symbol-map - filemap))))))))))) + ))))) + ;; Update symbol obarray + (setq-mode-local c-mode + semantic-lex-spp-macro-symbol-obarray + (semantic-lex-make-spp-table + (append semantic-lex-c-preprocessor-symbol-map-builtin + semantic-lex-c-preprocessor-symbol-map + filemap)))))) ;; Make sure the preprocessor symbols are set up when mode-local kicks ;; in. @@ -1946,15 +1947,17 @@ have to be wrapped in that namespace." "Do what `semantic-get-local-variables' does, plus add `this' if needed." (let* ((origvar (semantic-get-local-variables-default)) (ct (semantic-current-tag)) - (p (semantic-tag-function-parent ct))) + (p (when (semantic-tag-of-class-p ct 'function) + (or (semantic-tag-function-parent ct) + (car-safe (semantic-find-tags-by-type + "class" (semantic-find-tag-by-overlay))))))) ;; If we have a function parent, then that implies we can - (if (and p (semantic-tag-of-class-p ct 'function)) - ;; Append a new tag THIS into our space. - (cons (semantic-tag-new-variable "this" p nil) + (if p + ;; Append a new tag THIS into our space. + (cons (semantic-tag-new-variable "this" p nil :pointer 1) origvar) ;; No parent, just return the usual - origvar) - )) + origvar))) (define-mode-local-override semantic-idle-summary-current-symbol-info c-mode () @@ -2151,14 +2154,18 @@ actually in their parent which is not accessible.") (princ "\n"))) (princ "\n\nMacro Summary:\n") + (when semantic-lex-c-preprocessor-symbol-file - (princ "\n Your CPP table is primed from these files:\n") + (princ "\n Your CPP table is primed from these system files:\n") (dolist (file semantic-lex-c-preprocessor-symbol-file) (princ " ") (princ file) (princ "\n") (princ " in table: ") - (princ (object-print (semanticdb-file-table-object file))) + (let ((fto (semanticdb-file-table-object file))) + (if fto + (princ (object-print fto)) + (princ "No Table"))) (princ "\n") )) @@ -2173,7 +2180,7 @@ actually in their parent which is not accessible.") )) (when semantic-lex-c-preprocessor-symbol-map - (princ "\n User symbol map:\n") + (princ "\n User symbol map (primed from system files):\n") (dolist (S semantic-lex-c-preprocessor-symbol-map) (princ " ") (princ (car S)) @@ -2183,25 +2190,27 @@ actually in their parent which is not accessible.") )) (when (and (boundp 'ede-object) - ede-object - (arrayp semantic-lex-spp-project-macro-symbol-obarray)) + ede-object) (princ "\n Project symbol map:\n") (when (and (boundp 'ede-object) ede-object) - (princ " Your project symbol map is derived from the EDE object:\n ") + (princ " Your project symbol map is also derived from the EDE object:\n ") (princ (object-print ede-object))) (princ "\n\n") - (let ((macros nil)) - (mapatoms - #'(lambda (symbol) - (setq macros (cons symbol macros))) - semantic-lex-spp-project-macro-symbol-obarray) - (dolist (S macros) - (princ " ") - (princ (symbol-name S)) - (princ " = ") - (princ (symbol-value S)) - (princ "\n") - ))) + (if (arrayp semantic-lex-spp-project-macro-symbol-obarray) + (let ((macros nil)) + (mapatoms + #'(lambda (symbol) + (setq macros (cons symbol macros))) + semantic-lex-spp-project-macro-symbol-obarray) + (dolist (S macros) + (princ " ") + (princ (symbol-name S)) + (princ " = ") + (princ (symbol-value S)) + (princ "\n") + )) + ;; Else, not map + (princ " No Symbols.\n"))) (princ "\n\n Use: M-x semantic-lex-spp-describe RET\n") (princ "\n to see the complete macro table.\n") diff --git a/lisp/cedet/semantic/bovine/gcc.el b/lisp/cedet/semantic/bovine/gcc.el index 82876adb37e..7beb8ff3203 100644 --- a/lisp/cedet/semantic/bovine/gcc.el +++ b/lisp/cedet/semantic/bovine/gcc.el @@ -157,7 +157,11 @@ It should also include other symbols GCC was compiled with.") ;; `cpp' command in `semantic-gcc-setup' doesn't work on ;; Mac, try `gcc'. (apply 'semantic-gcc-query "gcc" cpp-options)))) - (defines (semantic-cpp-defs query)) + (defines (if (stringp query) + (semantic-cpp-defs query) + (message (concat "Could not query gcc for defines. " + "Maybe g++ is not installed.")) + nil)) (ver (cdr (assoc 'version fields))) (host (or (cdr (assoc 'target fields)) (cdr (assoc '--target fields)) diff --git a/lisp/cedet/semantic/complete.el b/lisp/cedet/semantic/complete.el index 194e0ee5f66..1c2ddf45c9d 100644 --- a/lisp/cedet/semantic/complete.el +++ b/lisp/cedet/semantic/complete.el @@ -678,7 +678,8 @@ a reasonable distance." ;;(message "Inline Hook installed, but overlay deleted.") (semantic-complete-inline-exit)) ;; Exit if commands caused us to exit the area of interest - (let ((s (semantic-overlay-start semantic-complete-inline-overlay)) + (let ((os (semantic-overlay-get semantic-complete-inline-overlay 'semantic-original-start)) + (s (semantic-overlay-start semantic-complete-inline-overlay)) (e (semantic-overlay-end semantic-complete-inline-overlay)) (b (semantic-overlay-buffer semantic-complete-inline-overlay)) (txt nil) @@ -686,8 +687,10 @@ a reasonable distance." (cond ;; EXIT when we are no longer in a good place. ((or (not (eq b (current-buffer))) - (<= (point) s) - (> (point) e)) + (< (point) s) + (< (point) os) + (> (point) e) + ) ;;(message "Exit: %S %S %S" s e (point)) (semantic-complete-inline-exit) ) @@ -710,7 +713,6 @@ a reasonable distance." (t ;; Else, show completions now (semantic-complete-inline-force-display) - )))) ;; If something goes terribly wrong, clean up after ourselves. (error (semantic-complete-inline-exit)))) @@ -761,6 +763,10 @@ END is at the end of the current symbol being completed." (semantic-overlay-put semantic-complete-inline-overlay 'window-config-start (current-window-configuration)) + ;; Save the original start. We need to exit completion if START + ;; moves. + (semantic-overlay-put semantic-complete-inline-overlay + 'semantic-original-start start) ;; Install our command hooks (add-hook 'pre-command-hook 'semantic-complete-pre-command-hook) (add-hook 'post-command-hook 'semantic-complete-post-command-hook) @@ -1171,7 +1177,7 @@ These collectors track themselves on a per-buffer basis." (let ((old nil) (bl semantic-collector-per-buffer-list)) (while (and bl (null old)) - (if (eq (object-class (car bl)) this) + (if (eq (eieio-object-class (car bl)) this) (setq old (car bl)))) (unless old (let ((new (call-next-method))) @@ -1510,7 +1516,7 @@ one in the source buffer." (insert (semantic-format-tag-summarize tag nil t) "\n\n") (when table (insert "From table: \n") - (insert (object-name table) "\n\n")) + (insert (eieio-object-name table) "\n\n")) (when buf (insert "In buffer: \n\n") (insert (format "%S" buf))) diff --git a/lisp/cedet/semantic/db-el.el b/lisp/cedet/semantic/db-el.el index 260f964c191..1b0f3292ad3 100644 --- a/lisp/cedet/semantic/db-el.el +++ b/lisp/cedet/semantic/db-el.el @@ -216,9 +216,8 @@ TOKTYPE is a hint to the type of tag desired." (symbol-name sym) "class" (semantic-elisp-desymbolify - (aref (class-v semanticdb-project-database) - class-public-a)) ;; slots - (semantic-elisp-desymbolify (class-parents sym)) ;; parents + (eieio--class-public-a (class-v semanticdb-project-database))) ;; slots + (semantic-elisp-desymbolify (eieio-class-parents sym)) ;; parents )) ((not toktype) ;; Figure it out on our own. diff --git a/lisp/cedet/semantic/db-file.el b/lisp/cedet/semantic/db-file.el index 269ff264126..2ef4fba1288 100644 --- a/lisp/cedet/semantic/db-file.el +++ b/lisp/cedet/semantic/db-file.el @@ -44,6 +44,8 @@ (defcustom semanticdb-default-save-directory (locate-user-emacs-file "semanticdb" ".semanticdb") "Directory name where semantic cache files are stored. +By default, it is either ~/.emacs.d/semanticdb, or ~/.semanticdb depending +on which exists. If this value is nil, files are saved in the current directory. If the value is a valid directory, then it overrides `semanticdb-default-file-name' and stores caches in a coded file name in this directory." @@ -316,7 +318,7 @@ Argument OBJ is the object to write." (data-debug-new-buffer (concat "*SEMANTICDB ERROR*")) (data-debug-insert-thing obj "*" "") (setq semanticdb-data-debug-on-write-error nil)) - (message "Error Writing Table: %s" (object-name obj)) + (message "Error Writing Table: %s" (eieio-object-name obj)) (error "%S" (car (cdr tableerror))))) ;; Clear the dirty bit. diff --git a/lisp/cedet/semantic/db-find.el b/lisp/cedet/semantic/db-find.el index 77fd10fc7aa..2e4ca319a9d 100644 --- a/lisp/cedet/semantic/db-find.el +++ b/lisp/cedet/semantic/db-find.el @@ -244,7 +244,7 @@ This class will cache data derived during various searches.") (let ((tab-idx (semanticdb-get-table-index tab))) ;; Not a full reset? (when (oref tab-idx type-cache) - (require 'db-typecache) + (require 'semantic/db-typecache) (semanticdb-typecache-notify-reset (oref tab-idx type-cache))) ))) @@ -919,7 +919,7 @@ but should be good enough for debugging assertions." (if (< (length result) 2) (concat "#<FIND RESULT " (mapconcat (lambda (a) - (concat "(" (object-name (car a) ) " . " + (concat "(" (eieio-object-name (car a) ) " . " "#<TAG LIST " (number-to-string (length (cdr a))) ">)")) result " ") @@ -1285,7 +1285,7 @@ associated with that tag should be loaded into a buffer." (semanticdb-find-tags-collector (lambda (table tags) (semanticdb-find-tags-external-children-of-type-method table type tags)) - path find-file-match)) + path find-file-match t)) (defun semanticdb-find-tags-subclasses-of-type (type &optional path find-file-match) diff --git a/lisp/cedet/semantic/db.el b/lisp/cedet/semantic/db.el index a6088231c61..e8784c4f85c 100644 --- a/lisp/cedet/semantic/db.el +++ b/lisp/cedet/semantic/db.el @@ -190,7 +190,7 @@ If one doesn't exist, create it." (oref obj index) (let ((idx nil)) (setq idx (funcall semanticdb-default-find-index-class - (concat (object-name obj) " index") + (concat (eieio-object-name obj) " index") ;; Fill in the defaults :table obj )) @@ -469,7 +469,7 @@ other than :table." (let ((cache (oref table cache)) (obj nil)) (while (and (not obj) cache) - (if (eq (object-class-fast (car cache)) desired-class) + (if (eq (eieio--object-class (car cache)) desired-class) (setq obj (car cache))) (setq cache (cdr cache))) (if obj @@ -520,7 +520,7 @@ other than :table." (let ((cache (oref db cache)) (obj nil)) (while (and (not obj) cache) - (if (eq (object-class-fast (car cache)) desired-class) + (if (eq (eieio--object-class (car cache)) desired-class) (setq obj (car cache))) (setq cache (cdr cache))) (if obj diff --git a/lisp/cedet/semantic/decorate/include.el b/lisp/cedet/semantic/decorate/include.el index 3a08db2b0d0..0451ad44fe8 100644 --- a/lisp/cedet/semantic/decorate/include.el +++ b/lisp/cedet/semantic/decorate/include.el @@ -797,7 +797,7 @@ Argument EVENT describes the event that caused this function to be called." (dolist (p path) (if (slot-boundp p 'tags) (princ (format "\n %s :\t%d tags, %d are includes. %s" - (object-name-string p) + (eieio-object-name-string p) (length (oref p tags)) (length (semantic-find-tags-by-class 'include p)) @@ -810,7 +810,7 @@ Argument EVENT describes the event that caused this function to be called." " Needs to be parsed.") (t "")))) (princ (format "\n %s :\tUnparsed" - (object-name-string p)))) + (eieio-object-name-string p)))) ))) ))) diff --git a/lisp/cedet/semantic/ede-grammar.el b/lisp/cedet/semantic/ede-grammar.el index 094832a8258..cb2a1faaac0 100644 --- a/lisp/cedet/semantic/ede-grammar.el +++ b/lisp/cedet/semantic/ede-grammar.el @@ -162,7 +162,7 @@ Lays claim to all -by.el, and -wy.el files." (setq comp (1+ comp)) (setq utd (1+ utd)))))))) (oref obj source)) - (message "All Semantic Grammar sources are up to date in %s" (object-name obj)) + (message "All Semantic Grammar sources are up to date in %s" (eieio-object-name obj)) (cons comp utd))) ;;; Makefile generation functions diff --git a/lisp/cedet/semantic/find.el b/lisp/cedet/semantic/find.el index aa42a77725e..f660c69ec3d 100644 --- a/lisp/cedet/semantic/find.el +++ b/lisp/cedet/semantic/find.el @@ -313,6 +313,15 @@ TABLE is a tag table. See `semantic-something-to-tag-table'." (eq ,class (semantic-tag-class (car tags))) ,table)) +(defmacro semantic-filter-tags-by-class (class &optional table) + "Find all tags of class not in the list CLASS in TABLE. +CLASS is a list of symbols representing the class of the token, +such as 'variable, of 'function.. +TABLE is a tag table. See `semantic-something-to-tag-table'." + `(semantic--find-tags-by-macro + (not (memq (semantic-tag-class (car tags)) ,class)) + ,table)) + (defmacro semantic-find-tags-by-type (type &optional table) "Find all tags of with a type TYPE in TABLE. TYPE is a string or tag representing a data type as defined in the diff --git a/lisp/cedet/semantic/fw.el b/lisp/cedet/semantic/fw.el index 5e050112a54..dadf181ce21 100644 --- a/lisp/cedet/semantic/fw.el +++ b/lisp/cedet/semantic/fw.el @@ -122,15 +122,13 @@ ) - (if (and (not (featurep 'xemacs)) - (>= emacs-major-version 21)) - (defalias 'semantic-make-local-hook 'identity) - (defalias 'semantic-make-local-hook 'make-local-hook) - ) + (defalias 'semantic-make-local-hook + (if (and (not (featurep 'xemacs)) + (>= emacs-major-version 21)) + #'identity #'make-local-hook)) - (if (featurep 'xemacs) - (defalias 'semantic-mode-line-update 'redraw-modeline) - (defalias 'semantic-mode-line-update 'force-mode-line-update)) + (defalias 'semantic-mode-line-update + (if (featurep 'xemacs) #'redraw-modeline #'force-mode-line-update)) ;; Since Emacs 22 major mode functions should use `run-mode-hooks' to ;; run major mode hooks. diff --git a/lisp/cedet/semantic/grammar.el b/lisp/cedet/semantic/grammar.el index ba4570e692b..9cb0f60b80a 100644 --- a/lisp/cedet/semantic/grammar.el +++ b/lisp/cedet/semantic/grammar.el @@ -51,6 +51,9 @@ (declare-function semantic-grammar-wy--install-parser "semantic/gram-wy-fallback") +(declare-function semantic-grammar-wy--install-parser + "semantic/gram-wy-fallback") + ;;;; ;;;; Set up lexer diff --git a/lisp/cedet/semantic/sb.el b/lisp/cedet/semantic/sb.el index e2d143b529e..32117da1af5 100644 --- a/lisp/cedet/semantic/sb.el +++ b/lisp/cedet/semantic/sb.el @@ -43,6 +43,11 @@ This will replace the named bucket that would have usually occurred here." :group 'speedbar :type 'integer) +(defvar semantic-sb-filter-tags-of-class '(code) + "Tags classes to not display in speedbar. +Make this buffer local for modes that have different types of tags +that should be ignored.") + (defcustom semantic-sb-button-format-tag-function 'semantic-format-tag-abbreviate "*Function called to create the text for a but from a token." :group 'speedbar @@ -405,7 +410,12 @@ Returns the tag list, or t for an error." (setq out (semantic-adopt-external-members out)) ;; Dump all the tokens into buckets. (semantic-sb-with-tag-buffer (car out) - (semantic-bucketize out))) + (semantic-bucketize out nil + (lambda (tagsin) + ;; Remove all boring tags. + (semantic-filter-tags-by-class + semantic-sb-filter-tags-of-class + tagsin))))) (error t)) t))) diff --git a/lisp/cedet/semantic/senator.el b/lisp/cedet/semantic/senator.el index a79e70a7f61..157223ff192 100644 --- a/lisp/cedet/semantic/senator.el +++ b/lisp/cedet/semantic/senator.el @@ -727,7 +727,13 @@ kill ring." (semantic-fetch-tags) (let ((ft (semantic-obtain-foreign-tag))) (when ft - (set-register register ft) + (set-register + register (registerv-make + ft + :insert-func #'semantic-insert-foreign-tag + :jump-func (lambda (v) + (switch-to-buffer (semantic-tag-buffer v)) + (goto-char (semantic-tag-start v))))) (if kill-flag (kill-region (semantic-tag-start ft) (semantic-tag-end ft)))))) diff --git a/lisp/cedet/semantic/sort.el b/lisp/cedet/semantic/sort.el index 6b58689524c..b32e11290ac 100644 --- a/lisp/cedet/semantic/sort.el +++ b/lisp/cedet/semantic/sort.el @@ -522,7 +522,7 @@ See `semantic-tag-external-member-children' for details." (semanticdb-minor-mode-p) (require 'semantic/db-find)) (let ((m (semanticdb-find-tags-external-children-of-type - (semantic-tag-name tag)))) + (semantic-tag-name tag) tag))) (if m (apply #'append (mapcar #'cdr m)))) (semantic--find-tags-by-function `(lambda (tok) diff --git a/lisp/cedet/semantic/tag-ls.el b/lisp/cedet/semantic/tag-ls.el index 7e5913334ea..bc7be980998 100644 --- a/lisp/cedet/semantic/tag-ls.el +++ b/lisp/cedet/semantic/tag-ls.el @@ -146,36 +146,42 @@ are the same. IGNORABLE-ATTRIBUTES are tag attributes that can be ignored. See `semantic-tag-similar-p' for details." - (let* ((ignore (append ignorable-attributes semantic-tag-similar-ignorable-attributes)) - (A1 (and (semantic--tag-similar-names-p tag1 tag2 (memq :name ignore)) - (semantic--tag-similar-types-p tag1 tag2) - (semantic-tag-of-class-p tag1 (semantic-tag-class tag2)))) - (attr1 (semantic-tag-attributes tag1)) - (attr2 (semantic-tag-attributes tag2)) - (A2 t) - (A3 t) - ) - ;; Test if there are non-ignorable attributes in A2 which are not present in A1 - (while (and A2 attr2) - (let ((a (car attr2))) - (unless (or (eq a :type) (memq a ignore)) - (setq A2 (semantic-tag-get-attribute tag1 a))) - (setq attr2 (cdr (cdr attr2))))) - (while (and A2 attr1 A3) - (let ((a (car attr1))) - - (cond ((or (eq a :type) ;; already tested above. - (memq a ignore)) ;; Ignore them... - nil) - - (t - (setq A3 - (semantic--tag-attribute-similar-p - a (car (cdr attr1)) (semantic-tag-get-attribute tag2 a) - ignorable-attributes))) - )) - (setq attr1 (cdr (cdr attr1)))) - (and A1 A2 A3))) + (or + ;; Tags are similar if they have the exact same lisp object + ;; Added for performance when testing a relatively common case in some uses + ;; of this code. + (eq tag1 tag2) + ;; More complex similarity test. + (let* ((ignore (append ignorable-attributes semantic-tag-similar-ignorable-attributes)) + (A1 (and (semantic--tag-similar-names-p tag1 tag2 (memq :name ignore)) + (semantic--tag-similar-types-p tag1 tag2) + (semantic-tag-of-class-p tag1 (semantic-tag-class tag2)))) + (attr1 (semantic-tag-attributes tag1)) + (attr2 (semantic-tag-attributes tag2)) + (A2 t) + (A3 t) + ) + ;; Test if there are non-ignorable attributes in A2 which are not present in A1 + (while (and A2 attr2) + (let ((a (car attr2))) + (unless (or (eq a :type) (memq a ignore)) + (setq A2 (semantic-tag-get-attribute tag1 a))) + (setq attr2 (cdr (cdr attr2))))) + (while (and A2 attr1 A3) + (let ((a (car attr1))) + + (cond ((or (eq a :type) ;; already tested above. + (memq a ignore)) ;; Ignore them... + nil) + + (t + (setq A3 + (semantic--tag-attribute-similar-p + a (car (cdr attr1)) (semantic-tag-get-attribute tag2 a) + ignorable-attributes))) + )) + (setq attr1 (cdr (cdr attr1)))) + (and A1 A2 A3)))) ;;; FULL NAMES ;; diff --git a/lisp/cedet/semantic/wisent/javat-wy.el b/lisp/cedet/semantic/wisent/javat-wy.el Binary files differindex e666b9c4191..f082358c4f5 100644 --- a/lisp/cedet/semantic/wisent/javat-wy.el +++ b/lisp/cedet/semantic/wisent/javat-wy.el diff --git a/lisp/cedet/semantic/wisent/wisent.el b/lisp/cedet/semantic/wisent/wisent.el index 1cb039f9750..32788381b23 100644 --- a/lisp/cedet/semantic/wisent/wisent.el +++ b/lisp/cedet/semantic/wisent/wisent.el @@ -46,8 +46,8 @@ \\_ _/ ( `o ` (European ;-) Bison \\ ` / - ( D ,¨ for Emacs! - ` ~ ,¨ + ( D ,\" for Emacs! + ` ~ ,\" `\"\"" :group 'semantic) |