• David Engster's avatar
    Merge from CEDET upstream (8564). · 890f7890
    David Engster authored
    * lisp/emacs-lisp:
    
    	* emacs-lisp/eieio.el (eieio--defalias, eieio-hook)
    	(eieio-error-unsupported-class-tags, eieio-skip-typecheck)
    	(eieio-optimize-primary-methods-flag, eieio-initializing-object)
    	(eieio-unbound, eieio-default-superclass)
    	(eieio--define-field-accessors, method-static, method-before)
    	(method-primary, method-after, method-num-lists)
    	(method-generic-before, method-generic-primary)
    	(method-generic-after, method-num-slots)
    	(eieio-specialized-key-to-generic-key)
    	(eieio--check-type, class-v, class-p)
    	(eieio-class-name, define-obsolete-function-alias)
    	(eieio-class-parents-fast, eieio-class-children-fast)
    	(same-class-fast-p, class-constructor, generic-p)
    	(generic-primary-only-p, generic-primary-only-one-p)
    	(class-option-assoc, class-option, eieio-object-p)
    	(class-abstract-p, class-method-invocation-order)
    	(eieio-defclass-autoload-map, eieio-defclass-autoload)
    	(eieio-class-un-autoload, eieio-defclass)
    	(eieio-eval-default-p, eieio-perform-slot-validation-for-default)
    	(eieio-add-new-slot, eieio-copy-parents-into-subclass)
    	(eieio--defgeneric-init-form, eieio-defgeneric-form)
    	(eieio-defgeneric-reset-generic-form)
    	(eieio-defgeneric-form-primary-only)
    	(eieio-defgeneric-reset-generic-form-primary-only)
    	(eieio-defgeneric-form-primary-only-one)
    	(eieio-defgeneric-reset-generic-form-primary-only-one)
    	(eieio-unbind-method-implementations)
    	(eieio--defmethod, eieio--typep)
    	(eieio-perform-slot-validation, eieio-validate-slot-value)
    	(eieio-validate-class-slot-value, eieio-barf-if-slot-unbound)
    	(eieio-oref, eieio-oref-default, eieio-default-eval-maybe)
    	(eieio-oset, eieio-oset-default, eieio-slot-originating-class-p)
    	(eieio-slot-name-index, eieio-class-slot-name-index)
    	(eieio-set-defaults, eieio-initarg-to-attribute)
    	(eieio-attribute-to-initarg, eieio-c3-candidate)
    	(eieio-c3-merge-lists, eieio-class-precedence-c3)
    	(eieio-class-precedence-dfs, eieio-class-precedence-bfs)
    	(eieio-class-precedence-list, eieio-generic-call-methodname)
    	(eieio-generic-call-arglst, eieio-generic-call-key)
    	(eieio-generic-call-next-method-list)
    	(eieio-pre-method-execution-functions, eieio-generic-call)
    	(eieio-generic-call-primary-only, eieiomt-method-list)
    	(eieiomt-optimizing-obarray, eieiomt-install)
    	(eieiomt-add, eieiomt-next, eieiomt-sym-optimize)
    	(eieio-generic-form, eieio-defmethod, make-obsolete)
    	(eieio-defgeneric, make-obsolete): Moved to eieio-core.el
    	(defclass): Remove `eval-and-compile' from macro.
    	(call-next-method, shared-initialize): Instead of using
    	`scoped-class' variable, use new eieio--scoped-class, and
    	eieio--with-scoped-class.
    	(initialize-instance): Rename local variable 'scoped-class' to
    	'this-class' to remove ambiguitity from old global.
    
    	* emacs-lisp/eieio-core.el: New file.  Derived from key parts of
    	eieio.el.
    	(eieio--scoped-class-stack): New variable
    	(eieio--scoped-class): New fcn
    	(eieio--with-scoped-class): New scoping macro.
    	(eieio-defclass): Use pushnew instead of add-to-list.
    	(eieio-defgeneric-form-primary-only-one, eieio-oset-default)
    	(eieio-slot-name-index, eieio-set-defaults, eieio-generic-call)
    	(eieio-generic-call-primary-only, eieiomt-add): Instead of using
    	`scoped-class' variable, use new eieio--scoped-class, and
    	eieio--with-scoped-class.
    
    	* emacs-lisp/eieio-base.el (cl-lib): Require during compile.
    
    * admin/grammars:
    
    	* grammars/srecode-template.wy (variable): Accept a single number
    	as a variable value.  Allows the 'priority' to be set to a number.
    	(wisent-srecode-template-lexer): Move number up so it can be
    	created.
    
    * etc/srecode:
    
    	* srecode/c.srt (header_guard): Add :c parameter so it works
    	standalone
    
    * lisp/cedet:
    
    	* semantic/edit.el (semantic-change-function): Use
    	`save-match-data' around running hooks.
    
    	* semantic/decorate/mode.el
    	(semantic-decorate-style-predicate-default)
    	(semantic-decorate-style-highlighter-default): New.
    	(semantic-decoration-mode): Do not require
    	`semantic/decorate/include' anymore.
    	(semantic-toggle-decoration-style): Error if an unknown decoration
    	style is toggled.
    	(define-semantic-decoration-style): Add new :load option.  When
    	:load is specified, add autoload tokens for the definition
    	functions so that code is loaded when the mode is used.
    	(semantic-decoration-on-includes): New autoload definition for
    	highlighting includes.
    
    	* semantic/bovine/c.el (semantic-lex-c-ifdef): Allow some misc
    	characters to appear after the tested variable.
    
    	* semantic/ede-grammar.el (project-compile-target): Calculate full
    	src name via ede-expand-filename instead of the crutch of the
    	current buffer.  Enables this target to compile in batch mode.
    
    	* semantic/idle.el
    	(semantic-idle-symbol-maybe-highlight): Wrap highlighting of
    	remote symbol with `save-excursion'.
    	(semantic-idle-scheduler-work-parse-neighboring-files): Instead of
    	using directory-files on each found mode pattern, collect all the
    	patterns for the current mode, and then for each file, see if it
    	matches any of them.  If it does, parse the file.  (Patch
    	inspiration from Tomasz Gajewski.)
    
    	* semantic/ctxt.el (semantic-ctxt-end-of-symbol): New.
    	(semantic-ctxt-current-symbol-default): New.
    
    	* semantic/bovine/el.el (semantic-default-elisp-setup): Add
    	autoload cookie.  Explain existence.
    	(footer): Add local variable for loaddefs.
    
    	* semantic/db.el (semanticdb-file-table-object): Add new filter,
    	only checking for regular files too.
    
    	* semantic/wisent/python.el
    	(semantic-format-tag-abbreviate): New override.  Cuts back on size
    	of code tags.
    
    	* srecode/compile.el (srecode-compile-templates): Fix warning
    	punctuation.  Remove status messages to clean up testing output
    
    	* ede/base.el (ede-project-placeholder-cache-file): Update doc to
    	mention 'nil' value.
    	(ede-save-cache): Disable cache save if file is nil.
    
    	* ede.el (ede-initialize-state-current-buffer): Flush deleted
    	projects.
    	(global-ede-mode): Always append our find-file-hook to the end.
    	(ede-flush-deleted-projects): New command.
    
    	* ede/cpp-root.el (ede-preprocessor-map): Protect against init
    	problems.
    
    	* ede/proj.el (ede-proj-target): Added a new "custom" option for
    	custom symbols representing a compiler or linker instead of
    	restricting things to only the predefined compilers and linkers.
    
    	* semantic.el (semantic-mode-map): To avoid showing showing
    	Development menu twice, only disable menu item if menu-bar is
    	actually enabled, otherwise the popup 'global menu' might display
    	a disabled Development menu.
    
    	* semantic/complete.el
    	(semantic-displayor-show-request): Fix which slot in obj is set to
    	the max tags.
    890f7890
ede-grammar.el 8.02 KB