Commit graph

43 commits

Author SHA1 Message Date
Eli Zaretskii
19dcb237b5 ; Add 2022 to copyright years. 2022-01-01 02:45:51 -05:00
Stefan Monnier
371fdd4f1b * lisp/cedet: Convert remaining files to lexical-binding
Remove a few more redundant `:group` args.
Make use of lexical scoping to replace `(lambda...) with proper closures.

* lisp/cedet/ede/custom.el (ede-project-sort-targets-list):
Use `dotimes` and replace `(lambda..) with closures.

* lisp/cedet/ede/proj-comp.el (proj-comp-insert-variable-once):
* lisp/cedet/ede/pmake.el (ede-pmake-insert-variable-once):
Remove unused var `addcr`.

* lisp/cedet/semantic/complete.el: Use lexical-binding.
(semantic-displayer-show-request): Remove unused var `typing-count`.
Use `equal` instead of `stringp+string=`.

* lisp/cedet/semantic/db-ebrowse.el: Use lexical-binding.
(semanticdb-create-ebrowse-database): Remove unused vars `mma` and `regexp`.
(semanticdb-ebrowse-strip-trees): Remove unused var `class` and `filename`.
(semanticdb-ebrowse-add-globals-to-table): Remove unused var `fname`.

* lisp/cedet/semantic/db-find.el: Use lexical-binding.
(semanticdb-find-adebug-insert-scanned-tag-cons): Remove always-nil var
`tip`.

* lisp/cedet/semantic/db-global.el: Use lexical-binding.
(semanticdb-enable-gnu-global-databases): Access local var
`semantic--ih` by sticking its value in the code passed to `eval`
rather than by dynamic scoping.

* lisp/cedet/semantic/db-typecache.el: Use lexical-binding.
(semanticdb-db-typecache-dump): Remove unused var `junk`.

* lisp/cedet/semantic/debug.el: Use lexical-binding.

* lisp/cedet/semantic/dep.el: Use lexical-binding.
(semantic-add-system-include): Avoid `add-to-list` on a local variable.
Access local var `value` by sticking its value in the code passed to
`eval` rather than by dynamic scoping.
(semantic-remove-system-include): Don't use `delete` on a list received
from elsewhere.
Access local var `value` by sticking its value in the code passed to
`eval` rather than by dynamic scoping.
(semantic-reset-system-include): Simplify a bit.

* lisp/cedet/semantic/ede-grammar.el: Use lexical-binding.
(project-compile-target): Remove unused vars `csrc` and `cb`.
Use `cl-incf`.  Remove apparently unneeded `with-no-warnings`.

* lisp/cedet/semantic/edit.el: Use lexical-binding.
(semantic-edits-change-over-tags): Remove unused var `inner-start`.
(semantic-edits-incremental-parser-1): Silence warnings about
intentionally unused var `last-cond`.

* lisp/cedet/semantic/fw.el: Use lexical-binding.
(recentf-exclude, semantic-init-hook, ede-auto-add-method)
(flymake-start-syntax-check-on-find-file, auto-insert): Declare vars.

* lisp/cedet/semantic/ia-sb.el: Use lexical-binding.
(semantic-ia-sb-key-map): Move initialization into declaration.
(semantic-ia-sb-more-buttons): Remove unused var `idx`.
(semantic-ia-sb-line-path): Simplify `if` -> `or`.

* lisp/cedet/semantic/idle.el (semantic-idle-breadcrumbs--tag-function):
Make it a function returning a closure.

* lisp/cedet/semantic/senator.el: Use lexical-binding.
(senator-search-set-tag-class-filter): Replace `(lambda..) with a closure.

* lisp/cedet/semantic/sort.el: Use lexical-binding.
(semanticdb-search-system-databases): Declare var.
(semantic-tag-external-member-children-default): Replace `(lambda..)
with a closure.

* lisp/cedet/semantic/tag-ls.el: Use lexical-binding.
(semantic-tag-protection-default, semantic-tag-abstract-p-default):
Simplify with `member`.

* lisp/cedet/semantic/util.el: Use lexical-binding.
(semantic-something-to-tag-table): Declare function
`semanticdb-abstract-table--eieio-childp` called via `cl-typep`.

* lisp/cedet/semantic/bovine/scm.el (semantic-default-scheme-setup):
Remove duplicate setting of `imenu-create-index-function`.

* lisp/cedet/semantic/decorate/mode.el (semantic-decoration-build-style-menu):
Replace `(lambda..) with a closure.

* lisp/cedet/srecode/cpp.el (srecode-semantic-apply-tag-to-dict):
Remove always-t variable `member`.

* lisp/cedet/srecode/mode.el (srecode-minor-mode-templates-menu):
Replace `(lambda..) with a closure.  Use `push`.

* lisp/cedet/semantic/chart.el: Use lexical-binding.
* lisp/cedet/semantic/db-debug.el: Use lexical-binding.
* lisp/cedet/semantic/db-el.el: Use lexical-binding.
* lisp/cedet/semantic/db-file.el: Use lexical-binding.
* lisp/cedet/semantic/db-javascript.el: Use lexical-binding.
* lisp/cedet/semantic/db-mode.el: Use lexical-binding.
* lisp/cedet/semantic/db-ref.el: Use lexical-binding.
* lisp/cedet/semantic/decorate.el: Use lexical-binding.
* lisp/cedet/semantic/doc.el: Use lexical-binding.
* lisp/cedet/semantic/find.el: Use lexical-binding.
* lisp/cedet/semantic/format.el: Use lexical-binding.
* lisp/cedet/semantic/html.el: Use lexical-binding.
* lisp/cedet/semantic/ia.el: Use lexical-binding.
* lisp/cedet/semantic/imenu.el: Use lexical-binding.
* lisp/cedet/semantic/java.el: Use lexical-binding.
* lisp/cedet/semantic/mru-bookmark.el: Use lexical-binding.
* lisp/cedet/semantic/symref.el: Use lexical-binding.
* lisp/cedet/semantic/tag-file.el: Use lexical-binding.
* lisp/cedet/semantic/tag-write.el: Use lexical-binding.
* lisp/cedet/semantic/texi.el: Use lexical-binding.
* lisp/cedet/semantic/util-modes.el: Use lexical-binding.
2021-03-15 00:08:34 -04:00
Stefan Kangas
834ba2b619 Prefer defvar-local in cedet
* lisp/cedet/ede.el (ede-object-root-project)
(ede-object-project, ede-object):
* lisp/cedet/mode-local.el (mode-local-symbol-table):
* lisp/cedet/semantic.el (semantic--parse-table)
(semantic-symbol->name-assoc-list)
(semantic-symbol->name-assoc-list-for-type-parts)
(semantic-case-fold, semantic--buffer-cache)
(semantic-unmatched-syntax-cache)
(semantic-unmatched-syntax-cache-check, semantic-parser-name)
(semantic--completion-cache, semantic-parse-tree-state)
(semantic-init-mode-hook, semantic-parser-warnings):
* lisp/cedet/semantic/bovine.el
(semantic-bovinate-nonterminal-check-obarray):
* lisp/cedet/semantic/complete.el (semantic-collector-per-buffer-list):
* lisp/cedet/semantic/ctxt.el (semantic-command-separation-character)
(semantic-function-argument-separation-character):
* lisp/cedet/semantic/db-find.el (semanticdb-find-lost-includes)
(semanticdb-find-scanned-include-tags):
* lisp/cedet/semantic/db.el (semanticdb-new-database-class)
(semanticdb-default-find-index-class)
(semanticdb-current-database, semanticdb-current-table)
(semanticdb-project-system-databases)
(semanticdb-out-of-buffer-create-table-fcn):
* lisp/cedet/semantic/debug.el (semantic-debug-parser-source)
(semantic-debug-parser-class)
(semantic-debug-parser-debugger-source):
* lisp/cedet/semantic/dep.el (semantic-dependency-include-path)
(semantic-dependency-system-include-path):
* lisp/cedet/semantic/format.el (semantic-function-argument-separator)
(semantic-format-parent-separator):
* lisp/cedet/semantic/fw.el (semantic-new-buffer-fcn-was-run):
* lisp/cedet/semantic/grammar.el (semantic-grammar-macros)
(semantic--grammar-macros-regexp-1)
(semantic--grammar-macros-regexp-2):
* lisp/cedet/semantic/idle.el (semantic-idle-scheduler-mode):
* lisp/cedet/semantic/imenu.el (semantic-imenu-expandable-tag-classes):
* lisp/cedet/semantic/lex-spp.el
(semantic-lex-spp-macro-symbol-obarray)
(semantic-lex-spp-project-macro-symbol-obarray)
(semantic-lex-spp-dynamic-macro-symbol-obarray)
(semantic-lex-spp-dynamic-macro-symbol-obarray-stack):
* lisp/cedet/semantic/lex.el (semantic-flex-keywords-obarray)
(semantic-lex-types-obarray, semantic-lex-analyzer)
(semantic-lex-syntax-modifications, semantic-lex-syntax-table)
(semantic-lex-comment-regex, semantic-lex-number-expression)
(semantic-lex-depth, semantic-flex-extensions)
(semantic-flex-syntax-modifications, semantic-ignore-comments)
(semantic-flex-enable-newlines, semantic-flex-enable-whitespace)
(semantic-flex-enable-bol, semantic-number-expression)
(semantic-flex-depth):
* lisp/cedet/semantic/senator.el (senator-isearch-semantic-mode):
* lisp/cedet/semantic/sort.el
(semantic-orphaned-member-metaparent-type):
* lisp/cedet/semantic/tag.el (semantic-tag-expand-function):
* lisp/cedet/semantic/util-modes.el (semantic-show-parser-state-string)
(semantic-stickyfunc-sticky-classes)
(semantic-highlight-func-ct-overlay):
* lisp/cedet/semantic/util.el
(semantic-type-relation-separator-character)
(semantic-equivalent-major-modes):
* lisp/cedet/semantic/wisent.el (wisent-error-function)
(wisent-lexer-function): Prefer defvar-local.
2021-01-31 20:08:25 +01:00
Paul Eggert
ba05d005e5 Update copyright year to 2021
Run "TZ=UTC0 admin/update-copyright".
2021-01-01 01:13:56 -08:00
Stefan Kangas
91a221b279 Remove cedet items obsolete since 23.2
* lisp/cedet/semantic.el (semantic-toplevel-bovine-table)
(semantic-toplevel-bovine-cache)
(semantic-before-toplevel-bovination-hook)
(semantic-after-toplevel-bovinate-hook, semantic-init-hooks)
(semantic-init-mode-hooks, semantic-init-db-hooks)
(semantic-bovination-working-type, semantic-bovinate-toplevel)
(semantic-bovinate-region-until-error)
(semantic-bovinate-from-nonterminal-full):
* lisp/cedet/semantic/db-mode.el (semanticdb-mode-hooks):
* lisp/cedet/semantic/decorate/mode.el
(semantic-decorate-pending-decoration-hooks):
* lisp/cedet/semantic/edit.el
(semantic-edits-incremental-reparse-failed-hooks):
* lisp/cedet/semantic/fw.el (define-mode-overload-implementation):
* lisp/cedet/semantic/idle.el
(semantic-before-idle-scheduler-reparse-hooks)
(semantic-after-idle-scheduler-reparse-hooks):
(semantic-eldoc-current-symbol-info)
* lisp/cedet/semantic/imenu.el (semantic-imenu-expand-type-parts)
(semantic-imenu-bucketize-type-parts)
(semantic-imenu-expandable-token):
* lisp/cedet/semantic/java.el
(semantic-java-prototype-nonterminal):
* lisp/cedet/semantic/lex.el (semantic-flex-token-start)
(semantic-flex-token-end, semantic-flex-token-text)
(semantic-flex-make-keyword-table, semantic-flex-keyword-p)
(semantic-flex-keyword-put, semantic-flex-keyword-get)
(semantic-flex-map-keywords, semantic-flex-keywords)
(semantic-flex-buffer, semantic-flex-list, semantic-flex):
* lisp/cedet/semantic/tag-file.el (semantic-find-nonterminal)
(semantic-find-dependency):
* lisp/cedet/semantic/tag-ls.el (semantic-nonterminal-full-name)
(semantic-nonterminal-protection, semantic-nonterminal-abstract)
(semantic-nonterminal-leaf):
* lisp/cedet/semantic/tag.el (semantic-token-type-parent)
(semantic-tag-make-assoc-list, semantic-expand-nonterminal):
* lisp/cedet/semantic/util.el (semantic-file-token-stream)
(semantic-something-to-stream):
* lisp/cedet/semantic/wisent.el (wisent-lex-make-token-table):
Delete many items obsolete since Emacs 23.2.
* lisp/cedet/semantic.el (semantic--set-buffer-cache)
(semantic-fetch-tags): Don't run removed hooks
'semantic-after-toplevel-bovinate-hook' and
'semantic-before-toplevel-bovination-hook'.
* lisp/cedet/semantic/bovine/el.el: Remove reference to obsolete
variable 'define-mode-overload-implementation'.
* lisp/cedet/semantic/doc.el (semantic-doc-snarf-comment-for-tag):
Don't bind removed variable 'semantic-ignore-comments'.
* lisp/cedet/semantic/fw.el (semantic-overload-symbol-from-function)
(semantic-alias-obsolete, semantic-varalias-obsolete): Declare
obsolete in favor of standard Emacs 'define-obsolete-*-alias'.
* lisp/cedet/semantic/grammar.el (semantic-grammar-ASSOC): Don't
use obsolete names.
* lisp/cedet/semantic/tag-ls.el (semantic-tag-full-package)
(semantic-tag-full-name): Doc fixes.
* lisp/cedet/semantic/util.el (semantic-describe-buffer): Don't bind
removed variable 'semantic-after-toplevel-bovinate-hook'.
* lisp/cedet/semantic/lex.el (semantic-flex-tokens)
(semantic-flex-unterminated-syntax-end-function)
(semantic-flex-extensions, semantic-flex-syntax-modifications)
(semantic-ignore-comments, semantic-flex-enable-newlines)
(semantic-flex-enable-whitespace, semantic-flex-enable-bol)
(semantic-number-expression, semantic-flex-depth): Make unused
variables obsolete.
; * etc/NEWS: List removed items.
2020-09-11 21:58:50 +02:00
Paul Eggert
365e01cc9f Update copyright year to 2020
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Lars Ingebrigtsen
31b1e4cbdc Throughout cedet, don't use semantic-overlay-* compat aliases 2019-06-20 12:51:39 +02:00
Lars Ingebrigtsen
5b525f4f56 Use cl-typep instead of obsolete predicate functions throughout cedet
* lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
(srecode-dictionary-add-entries):
(srecode-compound-toString):
(srecode-dump):
* lisp/cedet/srecode/compile.el (srecode-dump-code-list):
* lisp/cedet/semantic/util.el (semantic-something-to-tag-table):
* lisp/cedet/semantic/db-typecache.el (semanticdb-typecache-length):
* lisp/cedet/semantic/db-ref.el (semanticdb-check-references):
* lisp/cedet/semantic/db-find.el
(semanticdb-find-incomplete-cache-entries-p):
(semanticdb-find-translate-path-includes-default):
(semanticdb-find-results-p):
(semanticdb-find-result-with-nil-p):
* lisp/cedet/semantic/analyze/complete.el
(semantic-analyze-possible-completions): Use cl-typep instead of
functions like `srecode-dictionary-compound-value-child-p' etc.
2019-06-14 15:47:54 +02:00
Paul Eggert
ba809612c0 Merge from origin/emacs-26
2fcf2df Fix copyright years by hand
26bed8b Update copyright year to 2019
2814292 Fix value of default frame height.  (Bug#33921)
2018-12-31 17:57:29 -08:00
Paul Eggert
26bed8ba10 Update copyright year to 2019
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2019-01-01 01:01:13 +00:00
Glenn Morris
165803c691 Quieten semantic re-compilation when .elc already exist
* lisp/cedet/semantic/db-find.el, lisp/cedet/semantic/util.el:
Add some function declarations.
2018-03-16 13:44:13 -04:00
Paul Eggert
5c7dd8a783 Update copyright year to 2018
Run admin/update-copyright.
2018-01-01 00:57:59 -08:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
Glenn Morris
2d0a3feda6 Further robustify cedet bootstrap to loaddefs not yet built
* lisp/cedet/semantic/util.el (semantic-something-to-tag-table):
Avoid void-function error when bootstrapping and semantic/loaddefs.el
does not yet exist.
2017-04-24 19:51:20 -04:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Glenn Morris
c60ed8728a * lisp/cedet/semantic/util.el (semantic-complete-symbol):
Replace use of obsolete argument of display-completion-list.
2014-03-04 00:37:48 -08:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Glenn Morris
7b1bf1735e Use new names for hooks rather than obsolete aliases
* lisp/cedet/semantic/lex-spp.el (semantic-lex-spp-lex-text-string):
* lisp/cedet/semantic/util.el (semantic-describe-buffer):
* lisp/cedet/semantic/bovine/c.el (semantic-c-parse-lexical-token)
(semantic-default-c-setup):
* lisp/emacs-lisp/eieio-datadebug.el (eieio-debug-methodinvoke):
* lisp/gnus/gnus-diary.el (nndiary-request-create-group-functions)
(nndiary-request-update-info-functions)
(gnus-subscribe-newsgroup-functions)
(nndiary-request-accept-article-functions):
* lisp/net/tramp-gvfs.el (tramp-gvfs-dbus-event-error):
Use new names for hooks rather than obsolete aliases.

* lisp/arc-mode.el:
* lisp/emacs-lisp/checkdoc.el: Related comments.

* etc/NEWS: Related markup.
2012-11-12 19:11:46 -08:00
Chong Yidong
62a81506f8 Update CEDET from upstream. 2012-10-02 02:10:29 +08:00
Glenn Morris
acaf905b11 Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
Glenn Morris
73b0cd5003 Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
Glenn Morris
0d9f702fd0 Nuke arch-tags. 2011-01-15 15:16:57 -08:00
Glenn Morris
5df4f04cd3 Add 2011 to FSF/AIST copyright years. 2011-01-02 15:50:46 -08:00
Chong Yidong
dd9af436d9 Synch Semantic to CEDET 1.0.
Move CEDET ChangeLog entries to new file lisp/cedet/ChangeLog.

* semantic.el (semantic-version): Update to 2.0.
(semantic-mode-map): Add "," and "m" bindings.
(navigate-menu): Update.

* semantic/symref.el (semantic-symref-calculate-rootdir):
New function.
(semantic-symref-detect-symref-tool): Use it.

* semantic/symref/grep.el (semantic-symref-grep-shell): New var.
(semantic-symref-perform-search): Use it.  Calculate root dir with
semantic-symref-calculate-rootdir.
(semantic-symref-derive-find-filepatterns): Improve error message.

* semantic/symref/list.el
(semantic-symref-results-mode-map): New bindings.
(semantic-symref-auto-expand-results): New option.
(semantic-symref-results-dump): Obey auto-expand.
(semantic-symref-list-expand-all, semantic-symref-regexp)
(semantic-symref-list-contract-all)
(semantic-symref-list-map-open-hits)
(semantic-symref-list-update-open-hits)
(semantic-symref-list-create-macro-on-open-hit)
(semantic-symref-list-call-macro-on-open-hits): New functions.
(semantic-symref-list-menu-entries)
(semantic-symref-list-menu): New vars.
(semantic-symref-list-map-open-hits): Move cursor to beginning of
match before calling the mapped function.

* semantic/doc.el
(semantic-documentation-comment-preceeding-tag): Do nothing if the
mode doesn't provide comment-start-skip.

* semantic/scope.el
(semantic-analyze-scope-nested-tags-default): Strip duplicates.
(semantic-analyze-scoped-inherited-tag-map): Take the tag we are
looking for as part of the scoped tags list.

* semantic/html.el (semantic-default-html-setup): Add
senator-step-at-tag-classes.

* semantic/decorate/include.el
(semantic-decoration-on-unknown-includes): Change light bgcolor.
(semantic-decoration-on-includes-highlight-default): Check that
the include tag has a postion.

* semantic/complete.el (semantic-collector-local-members):
(semantic-complete-read-tag-local-members)
(semantic-complete-jump-local-members): New class and functions.
(semantic-complete-self-insert): Save excursion before completing.

* semantic/analyze/complete.el
(semantic-analyze-possible-completions-default): If no completions
are found, return the raw by-name-only completion list.  Add FLAGS
arguments.  Add support for 'no-tc (type constraint) and
'no-unique, or no stripping duplicates.
(semantic-analyze-possible-completions-default): Add FLAGS arg.

* semantic/util-modes.el
(semantic-stickyfunc-show-only-functions-p): New option.
(semantic-stickyfunc-fetch-stickyline): Don't show stickytext for
the very first line in a buffer.

* semantic/util.el (semantic-hack-search)
(semantic-recursive-find-nonterminal-by-name)
(semantic-current-tag-interactive): Deleted.
(semantic-describe-buffer): Fix expand-nonterminal.  Add
lex-syntax-mods, type relation separator char, and command
separation char.
(semantic-sanity-check): Only message if called interactively.

* semantic/tag.el (semantic-tag-deep-copy-one-tag): Copy the
:filename property and the tag position.

* semantic/lex-spp.el (semantic-lex-spp-lex-text-string):
Add recursion limit.

* semantic/imenu.el (semantic-imenu-bucketize-type-members):
Make this buffer local, not the obsoleted variable.

* semantic/idle.el: Add breadcrumbs support.
(semantic-idle-summary-current-symbol-info-default)
(semantic-idle-tag-highlight)
(semantic-idle-completion-list-default): Use
semanticdb-without-unloaded-file-searches for speed, and to
conform to the controls that specify if the idle timer is supposed
to be parsing unparsed includes.
(semantic-idle-symbol-highlight-face)
(semantic-idle-symbol-maybe-highlight): Rename from *-summary-*.
Callers changed.
(semantic-idle-work-parse-neighboring-files-flag): Default to nil.
(semantic-idle-work-update-headers-flag): New var.
(semantic-idle-work-for-one-buffer): Use it.
(semantic-idle-local-symbol-highlight): Rename from
semantic-idle-tag-highlight.
(semantic-idle-truncate-long-summaries): New option.

* semantic/ia.el (semantic-ia-cache)
(semantic-ia-get-completions): Deleted.  Callers changed.
(semantic-ia-show-variants): New command.
(semantic-ia-show-doc): If doc is empty, don't make a temp buffer.
(semantic-ia-show-summary): If there isn't anything to show, say so.

* semantic/grammar.el (semantic-grammar-create-package):
Save the buffer even in batch mode.

* semantic/fw.el
(semanticdb-without-unloaded-file-searches): New macro.

* semantic/dep.el (semantic-dependency-find-file-on-path):
Fix case dereferencing ede-object when it is a list.

* semantic/db-typecache.el (semanticdb-expand-nested-tag)
(semanticdb-typecache-faux-namespace): New functions.
(semanticdb-typecache-file-tags)
(semanticdb-typecache-merge-streams): Use them.
(semanticdb-typecache-file-tags): When deriving tags from a file,
give the mode a chance to monkey with the tag copy.
(semanticdb-typecache-find-default): Wrap find in save-excursion.
(semanticdb-typecache-find-by-name-helper): Merge found names down.

* semantic/db-global.el
(semanticdb-enable-gnu-global-in-buffer): Don't show messages if
GNU Global is not available and we don't want to throw an error.

* semantic/db-find.el (semanticdb-find-result-nth-in-buffer):
When trying to normalize the tag to a buffer, don't error if
set-buffer method doesn't exist.

* semantic/db-file.el (semanticdb-save-db): Simplify msg.

* semantic/db.el (semanticdb-refresh-table): If forcing a
refresh on a file not in a buffer, use semantic-find-file-noselect
and delete the buffer after use.
(semanticdb-current-database-list): When calculating root via
hooks, force it through true-filename and skip the list of
possible roots.

* semantic/ctxt.el (semantic-ctxt-imported-packages): New.

* semantic/analyze/debug.el
(semantic-analyzer-debug-insert-tag): Reset standard output to
current buffer.
(semantic-analyzer-debug-global-symbol)
(semantic-analyzer-debug-missing-innertype): Change "prefix" to
"symbol" in messages.

* semantic/analyze/refs.el: (semantic-analyze-refs-impl)
(semantic-analyze-refs-proto): When calculating value, make sure
the found tag is 'similar' to the originating tag.
(semantic--analyze-refs-find-tags-with-parent): Attempt to
identify matches via imported symbols of parents.
(semantic--analyze-refs-full-lookup-with-parents): Do a deep
search during the brute search.

* semantic/analyze.el
(semantic-analyze-find-tag-sequence-default): Be robust to
calculated scopes being nil.

* semantic/bovine/c.el (semantic-c-describe-environment): Add
project macro symbol array.
(semantic-c-parse-lexical-token): Add recursion limit.
(semantic-ctxt-imported-packages, semanticdb-expand-nested-tag):
New overrides.
(semantic-expand-c-tag-namelist): Split a full type from a typedef
out to its own tag.
(semantic-expand-c-tag-namelist): Do not split out a typedef'd
inline type if it is an anonymous type.
(semantic-c-reconstitute-token): Use the optional initializers as
a clue that some function is probably a constructor.  When
defining the type of these constructors, split the parent name,
and use only the class part, if applicable.

* semantic/bovine/c-by.el:
* semantic/wisent/python-wy.el: Regenerate.
2010-09-18 22:49:54 -04:00
Glenn Morris
114f9c9679 Add 2010 to copyright years. 2010-01-13 00:35:10 -08:00
Chong Yidong
2054a44ca6 * cedet/srecode/map.el (srecode-get-maps):
* cedet/semantic/wisent/wisent.el (wisent-parse-toggle-verbose-flag):
* cedet/semantic/wisent/comp.el (wisent-toggle-verbose-flag):
* cedet/semantic/decorate/mode.el (semantic-decoration-mode)
(semantic-toggle-decoration-style):
* cedet/semantic/decorate/include.el
(semantic-decoration-include-describe)
(semantic-decoration-unknown-include-describe)
(semantic-decoration-unparsed-include-describe)
(semantic-decoration-all-include-summary):
* cedet/semantic/bovine/c.el (semantic-c-debug-mode-init):
* cedet/semantic/analyze/complete.el
(semantic-analyze-possible-completions):
* cedet/semantic/util-modes.el (semantic-highlight-edits-mode)
(semantic-show-unmatched-syntax-mode)
(semantic-show-parser-state-mode, semantic-stickyfunc-mode)
(semantic-highlight-func-mode):
* cedet/semantic/util.el (semantic-describe-buffer):
* cedet/semantic/symref.el (semantic-symref-find-references-by-name)
(semantic-symref-find-tags-by-name)
(semantic-symref-find-tags-by-regexp)
(semantic-symref-find-tags-by-completion)
(semantic-symref-find-file-references-by-name)
(semantic-symref-find-text):
* cedet/semantic/senator.el (senator-copy-tag, senator-kill-tag)
(senator-yank-tag):
* cedet/semantic/scope.el (semantic-calculate-scope):
* cedet/semantic/mru-bookmark.el (semantic-mru-bookmark-mode):
* cedet/semantic/idle.el (semantic-idle-scheduler-mode)
(define-semantic-idle-service):
* cedet/semantic/complete.el (semantic-complete-analyze-inline)
(semantic-complete-analyze-inline-idle):
* cedet/semantic/analyze.el (semantic-analyze-current-context):
* cedet/mode-local.el (describe-mode-local-bindings)
(describe-mode-local-bindings-in-mode):
* cedet/ede/make.el (ede-make-check-version):
* cedet/ede/locate.el (ede-enable-locate-on-project):
* cedet/cedet-idutils.el (cedet-idutils-expand-filename)
(cedet-idutils-version-check):
* cedet/cedet-global.el (cedet-gnu-global-expand-filename)
(cedet-gnu-global-version-check):
* cedet/cedet-cscope.el (cedet-cscope-expand-filename)
(cedet-cscope-version-check): Use called-interactively-p instead
of interactive-p.
2009-11-22 23:49:13 +00:00
Stefan Monnier
0816d744fb * cedet/srecode/srt-mode.el (semantic-analyze-possible-completions):
* cedet/semantic/symref/list.el (semantic-symref-rb-toggle-expand-tag):
* cedet/semantic/symref/grep.el (semantic-symref-perform-search):
* cedet/semantic/bovine/gcc.el (semantic-gcc-query):
* cedet/semantic/bovine/c.el (semantic-c-parse-lexical-token):
* cedet/semantic/analyze/debug.el (semantic-analyzer-debug-add-buttons)
(semantic-analyzer-debug-global-symbol)
(semantic-analyzer-debug-missing-innertype)
(semantic-analyzer-debug-insert-include-summary):
* cedet/semantic/util.el (semantic-file-tag-table):
(semantic-describe-buffer-var-helper, semantic-something-to-tag-table)
(semantic-recursive-find-nonterminal-by-name):
* cedet/semantic/tag-ls.el (semantic-tag-calculate-parent-default):
* cedet/semantic/tag-file.el (semantic-prototype-file):
* cedet/semantic/symref.el (semantic-symref-parse-tool-output):
* cedet/semantic/sb.el (semantic-sb-fetch-tag-table):
* cedet/semantic/lex-spp.el (semantic-lex-spp-lex-text-string):
* cedet/semantic/idle.el (semantic-idle-work-for-one-buffer):
(semantic-idle-summary-maybe-highlight):
* cedet/semantic/ia-sb.el (semantic-ia-speedbar)
(semantic-ia-sb-tag-info):
* cedet/semantic/grammar.el (semantic-analyze-possible-completions):
* cedet/semantic/find.el (semantic-brute-find-tag-by-position):
* cedet/semantic/ede-grammar.el (project-compile-target):
(ede-proj-makefile-insert-variables):
* cedet/semantic/debug.el (semantic-debug-set-parser-location):
(semantic-debug-set-source-location, semantic-debug-interface-layout)
(semantic-debug-mode, semantic-debug):
* cedet/semantic/db.el (semanticdb-needs-refresh-p):
* cedet/semantic/db-typecache.el (semanticdb-typecache-refresh-for-buffer):
* cedet/semantic/db-javascript.el (semanticdb-equivalent-mode):
* cedet/semantic/db-find.el (semanticdb-find-log-new-search)
(semanticdb-find-translate-path-includes--internal)
(semanticdb-reset-log, semanticdb-find-log-activity):
* cedet/semantic/db-file.el (object-write):
* cedet/semantic/db-el.el (semanticdb-equivalent-mode):
* cedet/semantic/db-ebrowse.el (semanticdb-ebrowse-C-file-p)
(semanticdb-create-ebrowse-database):
* cedet/semantic/db-debug.el (semanticdb-table-sanity-check):
* cedet/semantic/complete.el (semantic-displayor-focus-request)
(semantic-collector-calculate-completions-raw)
(semantic-complete-read-tag-analyzer):
* cedet/semantic/analyze.el (semantic-analyze-pulse):
* cedet/ede/util.el (ede-update-version-in-source):
* cedet/ede/proj.el (project-delete-target):
* cedet/ede/proj-elisp.el (ede-update-version-in-source)
(ede-proj-flush-autoconf):
* cedet/ede/pconf.el (ede-proj-configure-synchronize)
(ede-proj-configure-synchronize):
* cedet/ede/locate.el (ede-locate-file-in-project-impl):
* cedet/ede/linux.el (ede-linux-version):
* cedet/ede/emacs.el (ede-emacs-version):
* cedet/ede/dired.el (ede-dired-add-to-target):
* cedet/ede.el (ede-buffer-header-file, ede-find-target)
(ede-buffer-documentation-files, ede-project-buffers, ede-set)
(ede-target-buffers, ede-buffers, ede-make-project-local-variable):
* cedet/cedet-idutils.el (cedet-idutils-fnid-call):
(cedet-idutils-lid-call, cedet-idutils-expand-filename)
(cedet-idutils-version-check):
* cedet/cedet-global.el (cedet-gnu-global-call):
(cedet-gnu-global-expand-filename, cedet-gnu-global-root)
(cedet-gnu-global-version-check, cedet-gnu-global-scan-hits):
* cedet/cedet-cscope.el (cedet-cscope-call)
(cedet-cscope-expand-filename, cedet-cscope-version-check):
Use with-current-buffer.
* cedet/ede.el (ede-make-project-local-variable)
(ede-set-project-variables, ede-set): Use dolist.
2009-10-30 02:16:41 +00:00
Stefan Monnier
eefa91dbc0 * cedet/semantic/fw.el (semantic-alias-obsolete)
(semantic-varalias-obsolete): Make the `when' arg mandatory.
(define-mode-overload-implementation):
* cedet/semantic/decorate/mode.el (semantic-decorate-pending-decoration-hooks):
* cedet/semantic/wisent.el (wisent-lex-make-token-table):
* cedet/semantic/util.el (semantic-file-token-stream)
(semantic-something-to-stream):
* cedet/semantic/tag.el (semantic-tag-make-assoc-list)
(semantic-expand-nonterminal):
* cedet/semantic/tag-file.el (semantic-find-nonterminal)
(semantic-find-dependency, semantic-find-nonterminal)
(semantic-find-dependency):
* cedet/semantic/lex.el (semantic-flex-start, semantic-flex-end)
(semantic-flex-text, semantic-flex-make-keyword-table)
(semantic-flex-keyword-p, semantic-flex-keyword-put)
(semantic-flex-keyword-get, semantic-flex-map-keywords)
(semantic-flex-keywords, semantic-flex-buffer, semantic-flex-list):
* cedet/semantic/java.el (semantic-java-prototype-nonterminal):
* cedet/semantic/idle.el (semantic-before-idle-scheduler-reparse-hooks)
(semantic-after-idle-scheduler-reparse-hooks):
* cedet/semantic/edit.el (semantic-edits-incremental-reparse-failed-hooks):
* cedet/semantic/db-mode.el (semanticdb-mode-hooks):
* cedet/semantic.el (semantic-toplevel-bovine-table)
(semantic-toplevel-bovine-cache)
(semantic-before-toplevel-bovination-hook, semantic-init-hooks)
(semantic-init-mode-hooks, semantic-init-db-hooks)
(semantic-bovination-working-type): Provide the `when' arg.
2009-10-25 02:55:27 +00:00
Chong Yidong
86f1602f64 * cedet/semantic/util.el (semantic-recursive-find-nonterminal-by-name):
* cedet/semantic/tag.el (semantic-token-type-parent): Add WHEN
argument to make-obsolete.

* cedet/semantic/fw.el (semantic-alias-obsolete)
(semantic-varalias-obsolete): Add optional WHEN argument.
2009-10-24 18:02:47 +00:00
Miles Bader
3999968a73 Add arch tagline 2009-10-02 10:53:34 +00:00
Chong Yidong
b90caf50d0 CEDET (development tools) package merged.
* cedet/*.el:
* cedet/ede/*.el:
* cedet/semantic/*.el:
* cedet/srecode/*.el: New files.
2009-09-28 15:15:00 +00:00
Chong Yidong
8bf997efee * cedet/semantic/idle.el (semantic-idle-scheduler-work-timer):
Change timeout to 1.  Doc fix.

* cedet/semantic/edit.el (semantic-change-hooks): Add
semantic-edits-change-function-handle-changes directly.

* cedet/semantic/util.el (semantic--completion-cache): Move to
semantic.el.
(semantic-symbol-start): Remove unneeded function.

* cedet/semantic.el (semantic--completion-cache): Move here from
semantic/util.el
(semantic-clear-toplevel-cache, semantic--set-buffer-cache)
(semantic-fetch-tags): Reset semantic--completion-cache.
(semantic-force-refresh): New function
(semantic-mode-map): New variable.

* cedet/semantic/senator.el: New file.

* cedet/ede.el: Fix autoload.
(ede-customize-forms-menu): Handle null projects.
2009-09-27 03:36:58 +00:00
Chong Yidong
29e1a603c0 * cedet/semantic/lex.el (semantic-lex-reset-hooks): Doc fix.
* cedet/semantic/idle.el
(semantic-before-idle-scheduler-reparse-hook)
(semantic-after-idle-scheduler-reparse-hook): Rename from *-hooks.
Make old name an obsolete alias.

* cedet/semantic/edit.el (semantic-after-partial-cache-change-hook)
(semantic-change-hooks, semantic-edits-new-change-hooks)
(semantic-edits-delete-change-hooks)
(semantic-edits-move-change-hook)
(semantic-edits-reparse-change-hooks)
(semantic-edits-incremental-reparse-failed-hooks): Doc fixes.

* cedet/semantic/debug.el (semantic-debug-mode): Rename hook
symbols.

* cedet/semantic/db-mode.el (semanticdb-mode-hook): Rename from
semanticdb-mode-hooks.
(global-semanticdb-minor-mode): Use the new name.
(semanticdb-hooks): Use semantic-init-db-hook instead of obsolete
alias semantic-init-db-hooks.

* cedet/semantic/db-global.el (semanticdb-enable-gnu-global-databases):
Use semantic-init-hook instead of obsolete alias
semantic-init-hooks.

* cedet/semantic/db-file.el (semanticdb-save-database-hook):
Rename from semanticdb-save-database-hooks.  Make old name an
obsolete alias.

* cedet/semantic/decorate/mode.el
(semantic-decorate-pending-decoration-hook): Rename from
semantic-decorate-pending-decoration-hooks.  Make old name an
obsolete alias.

* cedet/srecode/map.el (srecode-map-validate-file-for-mode): Use
semantic-init-hook instead of obsolete alias semantic-init-hooks.

* cedet/semantic/fw.el (semantic-find-file-noselect): Use
semantic-init-hook instead of obsolete alias semantic-init-hooks.

* cedet/ede/project-am.el (project-am-with-makefile-current): Use
semantic-init-hook instead of obsolete alias semantic-init-hooks.

* cedet/semantic/util.el (semantic-describe-buffer): Use
semantic-init-hook and semantic-init-db-hook instead of obsolete
aliases.

* cedet/semantic/util-modes.el (semantic-mode-line-update)
(semantic-toggle-minor-mode-globally): Use semantic-init-hook
instead of obsolete alias semantic-init-hooks.


Synch to Eric M. Ludlam's upstream CEDET repository:

* cedet/semantic/bovine/c.el (semantic-c-parse-token-hack-depth):
New var.
(semantic-c-parse-lexical-token): Save match data when setting up
the secondary parse buffer.  Allow recursion.  Protect against
initializing the major mode from throwing errors, ie user hooks.

* cedet/semantic/lex-spp.el (semantic-lex-spp-lex-text-string):
Protect installing a major mode from throwing errors.
2009-09-26 17:47:11 +00:00
Chong Yidong
af7b5a91b2 * cedet/semantic.el: Add autoloads for semantic/idle functions.
* cedet/semantic/util.el (semantic--completion-cache): New var.
(semantic-symbol-start, semantic-find-tag-for-completion)
(semantic-complete-symbol): New functions, adapted from Senator.

* bindings.el (complete-symbol): Try semantic-complete-symbol if
no tag table is active.

* cedet/semantic/idle.el (define-semantic-idle-service): Doc fix.
2009-09-21 15:59:48 +00:00
Chong Yidong
1eac105a70 Synch to Eric M. Ludlam's upstream CEDET repository.
* cedet/semantic/db.el (semanticdb-get-buffer): Wrap find-file in
save-match-data.

* cedet/semantic/db-global.el (semanticdb-test-gnu-global): Wrap
find-file in save-match-data.

* cedet/semantic/util.el (semantic-file-tag-table)
(semantic-recursive-find-nonterminal-by-name): Wrap find-file in
save-match-data.

* cedet/semantic/tag.el (semantic-tag-buffer): Wrap find-file in
save-match-data.

* cedet/semantic/tag-file.el (semantic-go-to-tag): Wrap the "goto"
part with save-match-data.

* cedet/semantic/lex-spp.el (semantic-lex-spp-lex-text-string):
Save match data around calling the major mode to enable.

* cedet/semantic/format.el (semantic-format-tag-short-doc-default):
Wrap find-file in save-match-data.

* cedet/semantic/fw.el (semantic-find-file-noselect): Wrap
find-file in save-match-data
2009-09-19 17:25:30 +00:00
Chong Yidong
bbaca9f74b lisp/cedet/semantic/util.el (semantic-file-tag-table): Require
semantic/db-mode instead of checking if semanticdb-minor-mode-p is
bound.
2009-09-07 16:35:33 +00:00
Chong Yidong
996bc9bf73 * emacs-lisp/autoload.el (generated-autoload-load-name): New var.
(autoload-generate-file-autoloads): Use it.
(make-autoload): Handle define-overloadable-function.

* emacs-lisp/lisp-mode.el (define-overloadable-function): Add
doc-string-elt property for define-overloadable-function.

lisp/cedet/semantic/analyze.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/ctxt.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/db.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/db-file.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/db-mode.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/db-typecache.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/doc.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/find.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/format.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/lex.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/sb.el: Require semantic/format.

lisp/cedet/semantic/sort.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/tag.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/tag-file.el: Add generated-autoload-load-name var.

lisp/cedet/semantic/tag-ls.el: Add generated-autoload-load-name var.
2009-09-05 01:00:36 +00:00
Chong Yidong
55b522b2eb lisp/cedet/semantic/analyze.el: Add local vars for autoloading.
(semantic-analyze-current-context): Autoload.

lisp/cedet/semantic/ctxt.el: Add local vars for autoloading.
Don't eval-when-compile semantic/db
(semantic-ctxt-current-mode): Autoload.
(semantic-up-context): Require semantic/find.

lisp/cedet/semantic/find.el (semantic-current-tag-parent)
(semantic-find-tags-by-scope-protection): Autoload.

lisp/cedet/semantic/format.el (semantic-format-tag-prototype)
(semantic-format-tag-summarize): Autoload.

lisp/cedet/semantic/idle.el: Declare external functions.
(semantic-idle-work-for-one-buffer, semantic-idle-work-core-handler):
Require semantic/db-mode.
(semantic-idle-work-core-handler): Synch to upstream.
(semantic-idle-scheduler-refresh-tags): Require semantic/decorate/mode.
(semantic-idle-summary-find-current-symbol-tag): Require semantic/db-find.
(semantic-idle-summary-current-symbol-info-context): Require
semantic/analyze.
(semantic-idle-summary-maybe-highlight, semantic-idle-tag-highlight):
Require pulse.
(semantic-idle-completion-list-default): Require semantic/complete.

lisp/cedet/semantic/lex-spp.el: Require semantic.
(semantic-lex-spp-analyzer-push-tokens-for-symbol): Synch to upstream.
(semantic-lex-spp-first-token-arg-list): Use split-string.

lisp/cedet/semantic/lex.el: Declare semantic-elapsed-time.
Add local vars for autoloading.
(semantic-lex-test): Require semantic.
(semantic-lex): Autoload.
(semantic-flex): Use semantic-lex-keyword-p to avoid compiler warning.

lisp/cedet/semantic/sb.el: Require semantic/sort.
Declare semanticdb-minor-mode-p.
(semantic-sb-fetch-tag-table): Require semantic/db-mode.

lisp/cedet/semantic/scope.el: eval-when-compile semantic/find.
Declare external functions.
(semantic-analyze-scope-nested-tags-default): Require semantic/analyze.
(semantic-analyze-show): Require semantic/analyze.
(semantic-calculate-scope): Require semantic/db-typecache.

lisp/cedet/semantic/sort.el: Add local vars for autoloading.
Declare semanticdb-find-tags-external-children-of-type.
(semantic-flatten-tags-table, semantic-tag-external-member-parent):
Autoload.
(semantic-tag-external-member-children-default): Require semantic/db-find.


lisp/cedet/semantic/symref.el: Require semantic.
Declare data-debug-new-buffer and data-debug-insert-object-slots.
(semantic-symref-data-debug-last-result): Require eieio-datadebug.

lisp/cedet/semantic/tag-file.el: Declare external functions.
(semantic-go-to-tag): Call semanticdb-table-child-p only if
semantic/db is loaded.
(semantic-dependency-tag-file): Require semantic/dep.

lisp/cedet/semantic/tag-ls.el: Require semantic.
Add local variables for autoloading.
(semantic-tag-prototype-p): Autoload.

lisp/cedet/semantic/tag-write.el: Require semantic.

lisp/cedet/semantic/tag.el: Update external function declarations and
requirements, removing autoloaded functions.
Add local vars for autoloading.
(semantic-tag-components): Autoload.

lisp/cedet/semantic/texi.el: Declare lookup-words.
eval-when-compile semantic/find.

lisp/cedet/semantic/util.el: Update file header.

lisp/cedet/semantic/analyze/complete.el: Add local variables for autoloading.
(semantic-analyze-possible-completions, semantic-analyze-type-constants):
Autoload.
2009-09-03 03:58:13 +00:00
Chong Yidong
994e5ceab0 Fix renamed filenames in file headers. 2009-08-28 15:47:01 +00:00
Chong Yidong
a91e32bc23 cedet/semantic/util.el: New file. 2009-08-28 15:21:26 +00:00