aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2021-03-12 11:32:42 -0500
committerStefan Monnier2021-03-12 11:32:42 -0500
commitd1a7d16f8e1a42d6e6edc0621e29b38f92e9fc2e (patch)
tree99ff2074307930d16368e8efee9c65e5f02f36d1
parente609bf59ebb23c10f0e9f56df38f64be37de06dd (diff)
downloademacs-d1a7d16f8e1a42d6e6edc0621e29b38f92e9fc2e.tar.gz
emacs-d1a7d16f8e1a42d6e6edc0621e29b38f92e9fc2e.zip
* lisp/cedet/{*.el,ede/*.el}: Use lexical-binding
Remove a few redundant `:group` arguments as well. * lisp/cedet/ede.el: Use lexical-binding. Don't load `ede/files` at compile-time. (ede-speedbar): Declare function. (ede-load-project-file): Allow `rootreturn` to be a reference rather than a symbol. (ede-initialize-state-current-buffer): Pass `ROOT` as a reference rather than a symbol to `ede-directory-get-open-project` and `ede-load-project-file` so we don't need to make it dynamically scoped. (ede-flush-deleted-projects): Avoid `add-to-list` on a local var. * lisp/cedet/ede/files.el: Use lexical-binding. (ede-directory-get-open-project): Allow `rootreturn` to be a reference rather than a symbol. (ede-project-root-directory): Remove unused var `root`. (ede-expand-filename-impl): Remove unused vars `path` and `proj`. * lisp/cedet/cedet-idutils.el: Use lexical-binding. (cedet-idutils-search): Remove always-nil variable `scopeflags`. * lisp/cedet/data-debug.el: Use lexical-binding. (data-debug-insert-overlay-button, data-debug-insert-overlay-list-button) (data-debug-insert-buffer-button, data-debug-insert-buffer-list-button) (data-debug-insert-process-button): Remove always-nil variable `tip`. (data-debug-insert-ring-button): Remove unused var `ringthing`. (data-debug-insert-widget-properties): Remove unused var `type`. * lisp/cedet/semantic.el: Use lexical-binding. (semantic-mode): Strength-reduce `eval` to `symbol-value`. * lisp/cedet/ede/custom.el: Use lexical-binding. (ede-project-sort-targets): Remove unused vars `count`, `current`, and `order`. * lisp/cedet/ede/pconf.el: Use lexical-binding. (ede-proj-configure-synchronize): Remove unused var `add-missing`. * lisp/cedet/ede/pmake.el (ede-proj-makefile-garbage-patterns): Simplify via η-reduction. (ede-proj-makefile-dependencies): Use `seq-some` rather than `eval+or`. * lisp/cedet/ede/proj-elisp.el: Use lexical-binding. (project-compile-target): Remove unused var `elc`. (ede-update-version-in-source): Remove unused var `match`. (project-compile-target): Declare function `cedet-update-autoloads` from file we don't have. * lisp/cedet/cedet-cscope.el: Use lexical-binding. * lisp/cedet/cedet-files.el: Use lexical-binding. * lisp/cedet/cedet-global.el: Use lexical-binding. * lisp/cedet/cedet.el: Use lexical-binding. * lisp/cedet/ede/auto.el: Use lexical-binding. * lisp/cedet/ede/autoconf-edit.el: Use lexical-binding. * lisp/cedet/ede/config.el: Use lexical-binding. * lisp/cedet/ede/cpp-root.el: Use lexical-binding. * lisp/cedet/ede/detect.el: Use lexical-binding. * lisp/cedet/ede/generic.el: Use lexical-binding. * lisp/cedet/ede/linux.el: Use lexical-binding. * lisp/cedet/ede/locate.el: Use lexical-binding. * lisp/cedet/ede/makefile-edit.el: Use lexical-binding. * lisp/cedet/ede/proj-info.el: Use lexical-binding. * lisp/cedet/ede/proj-obj.el: Use lexical-binding. * lisp/cedet/ede/proj-prog.el: Use lexical-binding. * lisp/cedet/ede/proj-shared.el: Use lexical-binding. * lisp/cedet/ede/proj.el: Use lexical-binding. * lisp/cedet/ede/shell.el: Use lexical-binding. * lisp/cedet/ede/simple.el: Use lexical-binding. * lisp/cedet/ede/source.el: Use lexical-binding. * lisp/cedet/ede/speedbar.el: Use lexical-binding. * lisp/cedet/ede/util.el: Use lexical-binding.
-rw-r--r--lisp/cedet/cedet-cscope.el6
-rw-r--r--lisp/cedet/cedet-files.el2
-rw-r--r--lisp/cedet/cedet-global.el6
-rw-r--r--lisp/cedet/cedet-idutils.el16
-rw-r--r--lisp/cedet/cedet.el40
-rw-r--r--lisp/cedet/data-debug.el57
-rw-r--r--lisp/cedet/ede.el77
-rw-r--r--lisp/cedet/ede/auto.el6
-rw-r--r--lisp/cedet/ede/autoconf-edit.el2
-rw-r--r--lisp/cedet/ede/config.el10
-rw-r--r--lisp/cedet/ede/cpp-root.el12
-rw-r--r--lisp/cedet/ede/custom.el18
-rw-r--r--lisp/cedet/ede/detect.el2
-rw-r--r--lisp/cedet/ede/dired.el10
-rw-r--r--lisp/cedet/ede/files.el24
-rw-r--r--lisp/cedet/ede/generic.el18
-rw-r--r--lisp/cedet/ede/linux.el6
-rw-r--r--lisp/cedet/ede/locate.el48
-rw-r--r--lisp/cedet/ede/makefile-edit.el2
-rw-r--r--lisp/cedet/ede/pconf.el21
-rw-r--r--lisp/cedet/ede/pmake.el43
-rw-r--r--lisp/cedet/ede/proj-comp.el2
-rw-r--r--lisp/cedet/ede/proj-elisp.el41
-rw-r--r--lisp/cedet/ede/proj-info.el6
-rw-r--r--lisp/cedet/ede/proj-obj.el8
-rw-r--r--lisp/cedet/ede/proj-prog.el6
-rw-r--r--lisp/cedet/ede/proj-shared.el6
-rw-r--r--lisp/cedet/ede/proj.el22
-rw-r--r--lisp/cedet/ede/shell.el2
-rw-r--r--lisp/cedet/ede/simple.el6
-rw-r--r--lisp/cedet/ede/source.el4
-rw-r--r--lisp/cedet/ede/speedbar.el52
-rw-r--r--lisp/cedet/ede/util.el2
-rw-r--r--lisp/cedet/mode-local.el2
-rw-r--r--lisp/cedet/pulse.el4
-rw-r--r--lisp/cedet/semantic.el70
36 files changed, 333 insertions, 326 deletions
diff --git a/lisp/cedet/cedet-cscope.el b/lisp/cedet/cedet-cscope.el
index 4d4a9f78d5d..95f04541c84 100644
--- a/lisp/cedet/cedet-cscope.el
+++ b/lisp/cedet/cedet-cscope.el
@@ -1,4 +1,4 @@
1;;; cedet-cscope.el --- CScope support for CEDET 1;;; cedet-cscope.el --- CScope support for CEDET -*- lexical-binding: t; -*-
2 2
3;;; Copyright (C) 2009-2021 Free Software Foundation, Inc. 3;;; Copyright (C) 2009-2021 Free Software Foundation, Inc.
4 4
@@ -34,7 +34,7 @@
34 :type 'string 34 :type 'string
35 :group 'cedet) 35 :group 'cedet)
36 36
37(defun cedet-cscope-search (searchtext texttype type scope) 37(defun cedet-cscope-search (searchtext texttype type _scope)
38 "Perform a search with CScope, return the created buffer. 38 "Perform a search with CScope, return the created buffer.
39SEARCHTEXT is text to find. 39SEARCHTEXT is text to find.
40TEXTTYPE is the type of text, such as `regexp', `string', `tagname', 40TEXTTYPE is the type of text, such as `regexp', `string', `tagname',
@@ -85,7 +85,7 @@ options -cR."
85 (with-current-buffer b 85 (with-current-buffer b
86 (setq default-directory cd) 86 (setq default-directory cd)
87 (erase-buffer)) 87 (erase-buffer))
88 (apply 'call-process cedet-cscope-command 88 (apply #'call-process cedet-cscope-command
89 nil b nil 89 nil b nil
90 flags) 90 flags)
91 b)) 91 b))
diff --git a/lisp/cedet/cedet-files.el b/lisp/cedet/cedet-files.el
index 31608159cc1..c9d557f5974 100644
--- a/lisp/cedet/cedet-files.el
+++ b/lisp/cedet/cedet-files.el
@@ -1,4 +1,4 @@
1;;; cedet-files.el --- Common routines dealing with file names. 1;;; cedet-files.el --- Common routines dealing with file names. -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2007-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2007-2021 Free Software Foundation, Inc.
4 4
diff --git a/lisp/cedet/cedet-global.el b/lisp/cedet/cedet-global.el
index 77b44744399..227ebd54b86 100644
--- a/lisp/cedet/cedet-global.el
+++ b/lisp/cedet/cedet-global.el
@@ -1,4 +1,4 @@
1;;; cedet-global.el --- GNU Global support for CEDET. 1;;; cedet-global.el --- GNU Global support for CEDET. -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2008-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2008-2021 Free Software Foundation, Inc.
4 4
@@ -75,7 +75,7 @@ SCOPE is the scope of the search, such as `project' or `subdirs'."
75 (with-current-buffer b 75 (with-current-buffer b
76 (setq default-directory cd) 76 (setq default-directory cd)
77 (erase-buffer)) 77 (erase-buffer))
78 (apply 'call-process cedet-global-command 78 (apply #'call-process cedet-global-command
79 nil b nil 79 nil b nil
80 flags) 80 flags)
81 b)) 81 b))
@@ -88,7 +88,7 @@ SCOPE is the scope of the search, such as `project' or `subdirs'."
88 (with-current-buffer b 88 (with-current-buffer b
89 (setq default-directory cd) 89 (setq default-directory cd)
90 (erase-buffer)) 90 (erase-buffer))
91 (apply 'call-process cedet-global-gtags-command 91 (apply #'call-process cedet-global-gtags-command
92 nil b nil 92 nil b nil
93 flags) 93 flags)
94 94
diff --git a/lisp/cedet/cedet-idutils.el b/lisp/cedet/cedet-idutils.el
index 3e3d6a5e949..a2b8cb35240 100644
--- a/lisp/cedet/cedet-idutils.el
+++ b/lisp/cedet/cedet-idutils.el
@@ -1,4 +1,4 @@
1;;; cedet-idutils.el --- ID Utils support for CEDET. 1;;; cedet-idutils.el --- ID Utils support for CEDET. -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2009-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2009-2021 Free Software Foundation, Inc.
4 4
@@ -47,7 +47,7 @@
47 :type 'string 47 :type 'string
48 :group 'cedet) 48 :group 'cedet)
49 49
50(defun cedet-idutils-search (searchtext texttype type scope) 50(defun cedet-idutils-search (searchtext texttype type _scope)
51 "Perform a search with ID Utils, return the created buffer. 51 "Perform a search with ID Utils, return the created buffer.
52SEARCHTEXT is text to find. 52SEARCHTEXT is text to find.
53TEXTTYPE is the type of text, such as `regexp', `string', `tagname', 53TEXTTYPE is the type of text, such as `regexp', `string', `tagname',
@@ -64,7 +64,7 @@ Note: Scope is not yet supported."
64 (let* ((resultflg (if (eq texttype 'tagcompletions) 64 (let* ((resultflg (if (eq texttype 'tagcompletions)
65 (list "--key=token") 65 (list "--key=token")
66 (list "--result=grep"))) 66 (list "--result=grep")))
67 (scopeflgs nil) ; (cond ((eq scope 'project) "" ) ((eq scope 'target) "l"))) 67 ;; (scopeflgs (cond ((eq scope 'project) "" ) ((eq scope 'target) "l")))
68 (stflag (cond ((or (eq texttype 'tagname) 68 (stflag (cond ((or (eq texttype 'tagname)
69 (eq texttype 'tagregexp)) 69 (eq texttype 'tagregexp))
70 (list "-r" "-w")) 70 (list "-r" "-w"))
@@ -77,7 +77,7 @@ Note: Scope is not yet supported."
77 ;; t means 'symbol 77 ;; t means 'symbol
78 (t (list "-l" "-w")))) 78 (t (list "-l" "-w"))))
79 ) 79 )
80 (cedet-idutils-lid-call (append resultflg scopeflgs stflag 80 (cedet-idutils-lid-call (append resultflg nil stflag ;; scopeflgs
81 (list searchtext)))))) 81 (list searchtext))))))
82 82
83(defun cedet-idutils-fnid-call (flags) 83(defun cedet-idutils-fnid-call (flags)
@@ -89,7 +89,7 @@ Return the created buffer with program output."
89 (with-current-buffer b 89 (with-current-buffer b
90 (setq default-directory cd) 90 (setq default-directory cd)
91 (erase-buffer)) 91 (erase-buffer))
92 (apply 'call-process cedet-idutils-file-command 92 (apply #'call-process cedet-idutils-file-command
93 nil b nil 93 nil b nil
94 flags) 94 flags)
95 b)) 95 b))
@@ -103,7 +103,7 @@ Return the created buffer with program output."
103 (with-current-buffer b 103 (with-current-buffer b
104 (setq default-directory cd) 104 (setq default-directory cd)
105 (erase-buffer)) 105 (erase-buffer))
106 (apply 'call-process cedet-idutils-token-command 106 (apply #'call-process cedet-idutils-token-command
107 nil b nil 107 nil b nil
108 flags) 108 flags)
109 b)) 109 b))
@@ -117,7 +117,7 @@ Return the created buffer with program output."
117 (with-current-buffer b 117 (with-current-buffer b
118 (setq default-directory cd) 118 (setq default-directory cd)
119 (erase-buffer)) 119 (erase-buffer))
120 (apply 'call-process cedet-idutils-make-command 120 (apply #'call-process cedet-idutils-make-command
121 nil b nil 121 nil b nil
122 flags) 122 flags)
123 b)) 123 b))
@@ -133,7 +133,7 @@ Return a filename relative to the default directory."
133 (if (looking-at "[^ \n]*fnid: ") 133 (if (looking-at "[^ \n]*fnid: ")
134 (error "ID Utils not available") 134 (error "ID Utils not available")
135 (split-string (buffer-string) "\n" t))))) 135 (split-string (buffer-string) "\n" t)))))
136 (setq ans (mapcar 'expand-file-name ans)) 136 (setq ans (mapcar #'expand-file-name ans))
137 (when (called-interactively-p 'interactive) 137 (when (called-interactively-p 'interactive)
138 (if ans 138 (if ans
139 (if (= (length ans) 1) 139 (if (= (length ans) 1)
diff --git a/lisp/cedet/cedet.el b/lisp/cedet/cedet.el
index 5d98a1939d7..b6043f1403e 100644
--- a/lisp/cedet/cedet.el
+++ b/lisp/cedet/cedet.el
@@ -1,4 +1,4 @@
1;;; cedet.el --- Setup CEDET environment 1;;; cedet.el --- Setup CEDET environment -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2002-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2002-2021 Free Software Foundation, Inc.
4 4
@@ -48,25 +48,25 @@
48 48
49(defvar cedet-menu-map ;(make-sparse-keymap "CEDET menu") 49(defvar cedet-menu-map ;(make-sparse-keymap "CEDET menu")
50 (let ((map (make-sparse-keymap "CEDET menu"))) 50 (let ((map (make-sparse-keymap "CEDET menu")))
51 (define-key map [semantic-force-refresh] 'undefined) 51 (define-key map [semantic-force-refresh] #'undefined)
52 (define-key map [semantic-edit-menu] 'undefined) 52 (define-key map [semantic-edit-menu] #'undefined)
53 (define-key map [navigate-menu] 'undefined) 53 (define-key map [navigate-menu] #'undefined)
54 (define-key map [semantic-options-separator] 'undefined) 54 (define-key map [semantic-options-separator] #'undefined)
55 (define-key map [global-semantic-highlight-func-mode] 'undefined) 55 (define-key map [global-semantic-highlight-func-mode] #'undefined)
56 (define-key map [global-semantic-stickyfunc-mode] 'undefined) 56 (define-key map [global-semantic-stickyfunc-mode] #'undefined)
57 (define-key map [global-semantic-decoration-mode] 'undefined) 57 (define-key map [global-semantic-decoration-mode] #'undefined)
58 (define-key map [global-semantic-idle-completions-mode] 'undefined) 58 (define-key map [global-semantic-idle-completions-mode] #'undefined)
59 (define-key map [global-semantic-idle-summary-mode] 'undefined) 59 (define-key map [global-semantic-idle-summary-mode] #'undefined)
60 (define-key map [global-semantic-idle-scheduler-mode] 'undefined) 60 (define-key map [global-semantic-idle-scheduler-mode] #'undefined)
61 (define-key map [global-semanticdb-minor-mode] 'undefined) 61 (define-key map [global-semanticdb-minor-mode] #'undefined)
62 (define-key map [cedet-menu-separator] 'undefined) 62 (define-key map [cedet-menu-separator] #'undefined)
63 (define-key map [ede-find-file] 'undefined) 63 (define-key map [ede-find-file] #'undefined)
64 (define-key map [ede-speedbar] 'undefined) 64 (define-key map [ede-speedbar] #'undefined)
65 (define-key map [ede] 'undefined) 65 (define-key map [ede] #'undefined)
66 (define-key map [ede-new] 'undefined) 66 (define-key map [ede-new] #'undefined)
67 (define-key map [ede-target-options] 'undefined) 67 (define-key map [ede-target-options] #'undefined)
68 (define-key map [ede-project-options] 'undefined) 68 (define-key map [ede-project-options] #'undefined)
69 (define-key map [ede-build-forms-menu] 'undefined) 69 (define-key map [ede-build-forms-menu] #'undefined)
70 map) 70 map)
71 "Menu keymap for the CEDET package. 71 "Menu keymap for the CEDET package.
72This is used by `semantic-mode' and `global-ede-mode'.") 72This is used by `semantic-mode' and `global-ede-mode'.")
diff --git a/lisp/cedet/data-debug.el b/lisp/cedet/data-debug.el
index f0fa91b3b17..428848be04d 100644
--- a/lisp/cedet/data-debug.el
+++ b/lisp/cedet/data-debug.el
@@ -1,4 +1,4 @@
1;;; data-debug.el --- Data structure debugger 1;;; data-debug.el --- Data structure debugger -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2007-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2007-2021 Free Software Foundation, Inc.
4 4
@@ -48,9 +48,9 @@
48 48
49;;; Compatibility 49;;; Compatibility
50;; 50;;
51(define-obsolete-function-alias 'data-debug-overlay-properties 'overlay-properties "28.1") 51(define-obsolete-function-alias 'data-debug-overlay-properties #'overlay-properties "28.1")
52(define-obsolete-function-alias 'data-debug-overlay-p 'overlayp "28.1") 52(define-obsolete-function-alias 'data-debug-overlay-p #'overlayp "28.1")
53(define-obsolete-function-alias 'dd-propertize 'propertize "28.1") 53(define-obsolete-function-alias 'dd-propertize #'propertize "28.1")
54 54
55;;; GENERIC STUFF 55;;; GENERIC STUFF
56;; 56;;
@@ -100,14 +100,14 @@ PREBUTTONTEXT is some text between prefix and the overlay button."
100 (let ((start (point)) 100 (let ((start (point))
101 (end nil) 101 (end nil)
102 (str (format "%s" overlay)) 102 (str (format "%s" overlay))
103 (tip nil)) 103 ) ;; (tip nil)
104 (insert prefix prebuttontext str) 104 (insert prefix prebuttontext str)
105 (setq end (point)) 105 (setq end (point))
106 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face) 106 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face)
107 (put-text-property start end 'ddebug overlay) 107 (put-text-property start end 'ddebug overlay)
108 (put-text-property start end 'ddebug-indent(length prefix)) 108 (put-text-property start end 'ddebug-indent(length prefix))
109 (put-text-property start end 'ddebug-prefix prefix) 109 (put-text-property start end 'ddebug-prefix prefix)
110 (put-text-property start end 'help-echo tip) 110 ;; (put-text-property start end 'help-echo tip)
111 (put-text-property start end 'ddebug-function 111 (put-text-property start end 'ddebug-function
112 'data-debug-insert-overlay-from-point) 112 'data-debug-insert-overlay-from-point)
113 (insert "\n") 113 (insert "\n")
@@ -149,14 +149,14 @@ PREBUTTONTEXT is some text between prefix and the overlay list button."
149 (let ((start (point)) 149 (let ((start (point))
150 (end nil) 150 (end nil)
151 (str (format "#<overlay list: %d entries>" (length overlaylist))) 151 (str (format "#<overlay list: %d entries>" (length overlaylist)))
152 (tip nil)) 152 ) ;; (tip nil)
153 (insert prefix prebuttontext str) 153 (insert prefix prebuttontext str)
154 (setq end (point)) 154 (setq end (point))
155 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face) 155 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face)
156 (put-text-property start end 'ddebug overlaylist) 156 (put-text-property start end 'ddebug overlaylist)
157 (put-text-property start end 'ddebug-indent(length prefix)) 157 (put-text-property start end 'ddebug-indent(length prefix))
158 (put-text-property start end 'ddebug-prefix prefix) 158 (put-text-property start end 'ddebug-prefix prefix)
159 (put-text-property start end 'help-echo tip) 159 ;; (put-text-property start end 'help-echo tip)
160 (put-text-property start end 'ddebug-function 160 (put-text-property start end 'ddebug-function
161 'data-debug-insert-overlay-list-from-point) 161 'data-debug-insert-overlay-list-from-point)
162 (insert "\n") 162 (insert "\n")
@@ -204,14 +204,14 @@ PREBUTTONTEXT is some text between prefix and the buffer button."
204 (let ((start (point)) 204 (let ((start (point))
205 (end nil) 205 (end nil)
206 (str (format "%S" buffer)) 206 (str (format "%S" buffer))
207 (tip nil)) 207 ) ;; (tip nil)
208 (insert prefix prebuttontext str) 208 (insert prefix prebuttontext str)
209 (setq end (point)) 209 (setq end (point))
210 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face) 210 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face)
211 (put-text-property start end 'ddebug buffer) 211 (put-text-property start end 'ddebug buffer)
212 (put-text-property start end 'ddebug-indent(length prefix)) 212 (put-text-property start end 'ddebug-indent(length prefix))
213 (put-text-property start end 'ddebug-prefix prefix) 213 (put-text-property start end 'ddebug-prefix prefix)
214 (put-text-property start end 'help-echo tip) 214 ;; (put-text-property start end 'help-echo tip)
215 (put-text-property start end 'ddebug-function 215 (put-text-property start end 'ddebug-function
216 'data-debug-insert-buffer-from-point) 216 'data-debug-insert-buffer-from-point)
217 (insert "\n") 217 (insert "\n")
@@ -253,14 +253,14 @@ PREBUTTONTEXT is some text between prefix and the buffer list button."
253 (let ((start (point)) 253 (let ((start (point))
254 (end nil) 254 (end nil)
255 (str (format "#<buffer list: %d entries>" (length bufferlist))) 255 (str (format "#<buffer list: %d entries>" (length bufferlist)))
256 (tip nil)) 256 ) ;; (tip nil)
257 (insert prefix prebuttontext str) 257 (insert prefix prebuttontext str)
258 (setq end (point)) 258 (setq end (point))
259 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face) 259 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face)
260 (put-text-property start end 'ddebug bufferlist) 260 (put-text-property start end 'ddebug bufferlist)
261 (put-text-property start end 'ddebug-indent(length prefix)) 261 (put-text-property start end 'ddebug-indent(length prefix))
262 (put-text-property start end 'ddebug-prefix prefix) 262 (put-text-property start end 'ddebug-prefix prefix)
263 (put-text-property start end 'help-echo tip) 263 ;; (put-text-property start end 'help-echo tip)
264 (put-text-property start end 'ddebug-function 264 (put-text-property start end 'ddebug-function
265 'data-debug-insert-buffer-list-from-point) 265 'data-debug-insert-buffer-list-from-point)
266 (insert "\n") 266 (insert "\n")
@@ -309,14 +309,14 @@ PREBUTTONTEXT is some text between prefix and the process button."
309 (let ((start (point)) 309 (let ((start (point))
310 (end nil) 310 (end nil)
311 (str (format "%S : %s" process (process-status process))) 311 (str (format "%S : %s" process (process-status process)))
312 (tip nil)) 312 ) ;; (tip nil)
313 (insert prefix prebuttontext str) 313 (insert prefix prebuttontext str)
314 (setq end (point)) 314 (setq end (point))
315 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face) 315 (put-text-property (- end (length str)) end 'face 'font-lock-comment-face)
316 (put-text-property start end 'ddebug process) 316 (put-text-property start end 'ddebug process)
317 (put-text-property start end 'ddebug-indent(length prefix)) 317 (put-text-property start end 'ddebug-indent(length prefix))
318 (put-text-property start end 'ddebug-prefix prefix) 318 (put-text-property start end 'ddebug-prefix prefix)
319 (put-text-property start end 'help-echo tip) 319 ;; (put-text-property start end 'help-echo tip)
320 (put-text-property start end 'ddebug-function 320 (put-text-property start end 'ddebug-function
321 'data-debug-insert-process-from-point) 321 'data-debug-insert-process-from-point)
322 (insert "\n") 322 (insert "\n")
@@ -363,8 +363,8 @@ PREBUTTONTEXT is some text between prefix and the stuff list button."
363 (str (format "#<RING: %d, %d max>" 363 (str (format "#<RING: %d, %d max>"
364 (ring-length ring) 364 (ring-length ring)
365 (ring-size ring))) 365 (ring-size ring)))
366 (ringthing 366 ;; (ringthing
367 (if (= (ring-length ring) 0) nil (ring-ref ring 0))) 367 ;; (if (= (ring-length ring) 0) nil (ring-ref ring 0)))
368 (tip (format "Ring max-size %d, length %d." 368 (tip (format "Ring max-size %d, length %d."
369 (ring-size ring) 369 (ring-size ring)
370 (ring-length ring))) 370 (ring-length ring)))
@@ -437,7 +437,7 @@ PREBUTTONTEXT is some text between prefix and the stuff list button."
437;; Widgets have a long list of properties 437;; Widgets have a long list of properties
438(defun data-debug-insert-widget-properties (widget prefix) 438(defun data-debug-insert-widget-properties (widget prefix)
439 "Insert the contents of WIDGET inserting PREFIX before each element." 439 "Insert the contents of WIDGET inserting PREFIX before each element."
440 (let ((type (car widget)) 440 (let (;; (type (car widget))
441 (rest (cdr widget))) 441 (rest (cdr widget)))
442 (while rest 442 (while rest
443 (data-debug-insert-thing (car (cdr rest)) 443 (data-debug-insert-thing (car (cdr rest))
@@ -683,7 +683,7 @@ PREBUTTONTEXT is some text between prefix and the thing."
683 ) 683 )
684 684
685;;; nil thing 685;;; nil thing
686(defun data-debug-insert-nil (thing prefix prebuttontext) 686(defun data-debug-insert-nil (_thing prefix prebuttontext)
687 "Insert one simple THING with a face. 687 "Insert one simple THING with a face.
688PREFIX is the text that precedes the button. 688PREFIX is the text that precedes the button.
689PREBUTTONTEXT is some text between prefix and the thing. 689PREBUTTONTEXT is some text between prefix and the thing.
@@ -856,19 +856,18 @@ If PARENT is non-nil, it is somehow related as a parent to thing."
856(defvar data-debug-mode-map 856(defvar data-debug-mode-map
857 (let ((km (make-sparse-keymap))) 857 (let ((km (make-sparse-keymap)))
858 (suppress-keymap km) 858 (suppress-keymap km)
859 (define-key km [mouse-2] 'data-debug-expand-or-contract-mouse) 859 (define-key km [mouse-2] #'data-debug-expand-or-contract-mouse)
860 (define-key km " " 'data-debug-expand-or-contract) 860 (define-key km " " #'data-debug-expand-or-contract)
861 (define-key km "\C-m" 'data-debug-expand-or-contract) 861 (define-key km "\C-m" #'data-debug-expand-or-contract)
862 (define-key km "n" 'data-debug-next) 862 (define-key km "n" #'data-debug-next)
863 (define-key km "p" 'data-debug-prev) 863 (define-key km "p" #'data-debug-prev)
864 (define-key km "N" 'data-debug-next-expando) 864 (define-key km "N" #'data-debug-next-expando)
865 (define-key km "P" 'data-debug-prev-expando) 865 (define-key km "P" #'data-debug-prev-expando)
866 km) 866 km)
867 "Keymap used in data-debug.") 867 "Keymap used in data-debug.")
868 868
869(defcustom data-debug-mode-hook nil 869(defcustom data-debug-mode-hook nil
870 "Hook run when data-debug starts." 870 "Hook run when data-debug starts."
871 :group 'data-debug
872 :type 'hook) 871 :type 'hook)
873 872
874(define-derived-mode data-debug-mode fundamental-mode "DATA-DEBUG" 873(define-derived-mode data-debug-mode fundamental-mode "DATA-DEBUG"
@@ -1032,7 +1031,7 @@ Do nothing if already contracted."
1032 nil read-expression-map t 1031 nil read-expression-map t
1033 'read-expression-history)) 1032 'read-expression-history))
1034 )) 1033 ))
1035 (let ((v (eval expr))) 1034 (let ((v (eval expr t)))
1036 (if (not v) 1035 (if (not v)
1037 (message "Expression %s is nil." expr) 1036 (message "Expression %s is nil." expr)
1038 (data-debug-show-stuff v "expression")))) 1037 (data-debug-show-stuff v "expression"))))
@@ -1049,12 +1048,12 @@ If the result is a list or vector, then use the data debugger to display it."
1049 1048
1050 (let (result) 1049 (let (result)
1051 (if (null eval-expression-debug-on-error) 1050 (if (null eval-expression-debug-on-error)
1052 (setq result (values--store-value (eval expr))) 1051 (setq result (values--store-value (eval expr t)))
1053 (let ((old-value (make-symbol "t")) new-value) 1052 (let ((old-value (make-symbol "t")) new-value)
1054 ;; Bind debug-on-error to something unique so that we can 1053 ;; Bind debug-on-error to something unique so that we can
1055 ;; detect when evalled code changes it. 1054 ;; detect when evalled code changes it.
1056 (let ((debug-on-error old-value)) 1055 (let ((debug-on-error old-value))
1057 (setq result (values--store-value (eval expr))) 1056 (setq result (values--store-value (eval expr t)))
1058 (setq new-value debug-on-error)) 1057 (setq new-value debug-on-error))
1059 ;; If evalled code has changed the value of debug-on-error, 1058 ;; If evalled code has changed the value of debug-on-error,
1060 ;; propagate that change to the global binding. 1059 ;; propagate that change to the global binding.
diff --git a/lisp/cedet/ede.el b/lisp/cedet/ede.el
index 369a9f7e713..2ec9f5d9d67 100644
--- a/lisp/cedet/ede.el
+++ b/lisp/cedet/ede.el
@@ -1,4 +1,4 @@
1;;; ede.el --- Emacs Development Environment gloss 1;;; ede.el --- Emacs Development Environment gloss -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 1998-2005, 2007-2021 Free Software Foundation, Inc. 3;; Copyright (C) 1998-2005, 2007-2021 Free Software Foundation, Inc.
4 4
@@ -87,7 +87,6 @@ target wants the file, the user is asked. If only one target wants
87the file, then it is automatically added to that target. If the 87the file, then it is automatically added to that target. If the
88value is `ask', then the user is always asked, unless there is no 88value is `ask', then the user is always asked, unless there is no
89target willing to take the file. `never' means never perform the check." 89target willing to take the file. `never' means never perform the check."
90 :group 'ede
91 :type '(choice (const always) 90 :type '(choice (const always)
92 (const multi-ask) 91 (const multi-ask)
93 (const ask) 92 (const ask)
@@ -95,7 +94,6 @@ target willing to take the file. `never' means never perform the check."
95 94
96(defcustom ede-debug-program-function 'gdb 95(defcustom ede-debug-program-function 'gdb
97 "Default Emacs command used to debug a target." 96 "Default Emacs command used to debug a target."
98 :group 'ede
99 :type 'function) ; make this be a list of options some day 97 :type 'function) ; make this be a list of options some day
100 98
101(defcustom ede-project-directories nil 99(defcustom ede-project-directories nil
@@ -112,7 +110,6 @@ If you invoke the commands \\[ede] or \\[ede-new] on a directory
112that is not listed, Emacs will offer to add it to the list. 110that is not listed, Emacs will offer to add it to the list.
113 111
114Any other value disables searching for EDE project files." 112Any other value disables searching for EDE project files."
115 :group 'ede
116 :type '(choice (const :tag "Any directory" t) 113 :type '(choice (const :tag "Any directory" t)
117 (repeat :tag "List of directories" 114 (repeat :tag "List of directories"
118 (directory)) 115 (directory))
@@ -186,21 +183,23 @@ Argument LIST-O-O is the list of objects to choose from."
186 183
187;;; Menu and Keymap 184;;; Menu and Keymap
188 185
186(declare-function ede-speedbar "ede/speedbar" ())
187
189(defvar ede-minor-mode-map 188(defvar ede-minor-mode-map
190 (let ((map (make-sparse-keymap)) 189 (let ((map (make-sparse-keymap))
191 (pmap (make-sparse-keymap))) 190 (pmap (make-sparse-keymap)))
192 (define-key pmap "e" 'ede-edit-file-target) 191 (define-key pmap "e" #'ede-edit-file-target)
193 (define-key pmap "a" 'ede-add-file) 192 (define-key pmap "a" #'ede-add-file)
194 (define-key pmap "d" 'ede-remove-file) 193 (define-key pmap "d" #'ede-remove-file)
195 (define-key pmap "t" 'ede-new-target) 194 (define-key pmap "t" #'ede-new-target)
196 (define-key pmap "g" 'ede-rescan-toplevel) 195 (define-key pmap "g" #'ede-rescan-toplevel)
197 (define-key pmap "s" 'ede-speedbar) 196 (define-key pmap "s" #'ede-speedbar)
198 (define-key pmap "f" 'ede-find-file) 197 (define-key pmap "f" #'ede-find-file)
199 (define-key pmap "C" 'ede-compile-project) 198 (define-key pmap "C" #'ede-compile-project)
200 (define-key pmap "c" 'ede-compile-target) 199 (define-key pmap "c" #'ede-compile-target)
201 (define-key pmap "\C-c" 'ede-compile-selected) 200 (define-key pmap "\C-c" #'ede-compile-selected)
202 (define-key pmap "D" 'ede-debug-target) 201 (define-key pmap "D" #'ede-debug-target)
203 (define-key pmap "R" 'ede-run-target) 202 (define-key pmap "R" #'ede-run-target)
204 ;; bind our submap into map 203 ;; bind our submap into map
205 (define-key map "\C-c." pmap) 204 (define-key map "\C-c." pmap)
206 map) 205 map)
@@ -476,7 +475,7 @@ To be used in hook functions."
476If this file is contained, or could be contained in an EDE 475If this file is contained, or could be contained in an EDE
477controlled project, then this mode is activated automatically 476controlled project, then this mode is activated automatically
478provided `global-ede-mode' is enabled." 477provided `global-ede-mode' is enabled."
479 :group 'ede 478 :global nil
480 (cond ((or (eq major-mode 'dired-mode) 479 (cond ((or (eq major-mode 'dired-mode)
481 (eq major-mode 'vc-dir-mode)) 480 (eq major-mode 'vc-dir-mode))
482 (ede-dired-minor-mode (if ede-minor-mode 1 -1))) 481 (ede-dired-minor-mode (if ede-minor-mode 1 -1)))
@@ -486,6 +485,9 @@ provided `global-ede-mode' is enabled."
486 ;; If we fail to have a project here, turn it back off. 485 ;; If we fail to have a project here, turn it back off.
487 (ede-minor-mode -1))))) 486 (ede-minor-mode -1)))))
488 487
488(declare-function ede-directory-project-cons "ede/files" (dir &optional force))
489(declare-function ede-toplevel-project-or-nil "ede/files" (dir))
490
489(defun ede-initialize-state-current-buffer () 491(defun ede-initialize-state-current-buffer ()
490 "Initialize the current buffer's state for EDE. 492 "Initialize the current buffer's state for EDE.
491Sets buffer local variables for EDE." 493Sets buffer local variables for EDE."
@@ -496,7 +498,7 @@ Sets buffer local variables for EDE."
496 ;; Init the buffer. 498 ;; Init the buffer.
497 (let* ((ROOT nil) 499 (let* ((ROOT nil)
498 (proj (ede-directory-get-open-project default-directory 500 (proj (ede-directory-get-open-project default-directory
499 'ROOT))) 501 (gv-ref ROOT))))
500 502
501 (when (not proj) 503 (when (not proj)
502 ;; If there is no open project, look up the project 504 ;; If there is no open project, look up the project
@@ -517,7 +519,8 @@ Sets buffer local variables for EDE."
517 (ede-directory-safe-p top))) 519 (ede-directory-safe-p top)))
518 520
519 ;; The project is safe, so load it in. 521 ;; The project is safe, so load it in.
520 (setq proj (ede-load-project-file default-directory projdetect 'ROOT)))))) 522 (setq proj (ede-load-project-file default-directory projdetect
523 (gv-ref ROOT)))))))
521 524
522 ;; If PROJ is now loaded in, we can initialize our buffer to it. 525 ;; If PROJ is now loaded in, we can initialize our buffer to it.
523 (when proj 526 (when proj
@@ -561,30 +564,29 @@ Sets buffer local variables for EDE."
561This global minor mode enables `ede-minor-mode' in all buffers in 564This global minor mode enables `ede-minor-mode' in all buffers in
562an EDE controlled project." 565an EDE controlled project."
563 :global t 566 :global t
564 :group 'ede
565 (if global-ede-mode 567 (if global-ede-mode
566 ;; Turn on global-ede-mode 568 ;; Turn on global-ede-mode
567 (progn 569 (progn
568 (if semantic-mode 570 (if semantic-mode
569 (define-key cedet-menu-map [cedet-menu-separator] '("--"))) 571 (define-key cedet-menu-map [cedet-menu-separator] '("--")))
570 (add-hook 'semanticdb-project-predicate-functions 'ede-directory-project-p) 572 (add-hook 'semanticdb-project-predicate-functions #'ede-directory-project-p)
571 (add-hook 'semanticdb-project-root-functions 'ede-toplevel-project-or-nil) 573 (add-hook 'semanticdb-project-root-functions #'ede-toplevel-project-or-nil)
572 (add-hook 'ecb-source-path-functions 'ede-ecb-project-paths) 574 (add-hook 'ecb-source-path-functions #'ede-ecb-project-paths)
573 ;; Append our hook to the end. This allows mode-local to finish 575 ;; Append our hook to the end. This allows mode-local to finish
574 ;; it's stuff before we start doing misc file loads, etc. 576 ;; it's stuff before we start doing misc file loads, etc.
575 (add-hook 'find-file-hook 'ede-turn-on-hook t) 577 (add-hook 'find-file-hook #'ede-turn-on-hook t)
576 (add-hook 'dired-mode-hook 'ede-turn-on-hook) 578 (add-hook 'dired-mode-hook #'ede-turn-on-hook)
577 (add-hook 'kill-emacs-hook 'ede-save-cache) 579 (add-hook 'kill-emacs-hook #'ede-save-cache)
578 (ede-load-cache) 580 (ede-load-cache)
579 (ede-reset-all-buffers)) 581 (ede-reset-all-buffers))
580 ;; Turn off global-ede-mode 582 ;; Turn off global-ede-mode
581 (define-key cedet-menu-map [cedet-menu-separator] nil) 583 (define-key cedet-menu-map [cedet-menu-separator] nil)
582 (remove-hook 'semanticdb-project-predicate-functions 'ede-directory-project-p) 584 (remove-hook 'semanticdb-project-predicate-functions #'ede-directory-project-p)
583 (remove-hook 'semanticdb-project-root-functions 'ede-toplevel-project-or-nil) 585 (remove-hook 'semanticdb-project-root-functions #'ede-toplevel-project-or-nil)
584 (remove-hook 'ecb-source-path-functions 'ede-ecb-project-paths) 586 (remove-hook 'ecb-source-path-functions #'ede-ecb-project-paths)
585 (remove-hook 'find-file-hook 'ede-turn-on-hook) 587 (remove-hook 'find-file-hook #'ede-turn-on-hook)
586 (remove-hook 'dired-mode-hook 'ede-turn-on-hook) 588 (remove-hook 'dired-mode-hook #'ede-turn-on-hook)
587 (remove-hook 'kill-emacs-hook 'ede-save-cache) 589 (remove-hook 'kill-emacs-hook #'ede-save-cache)
588 (ede-save-cache) 590 (ede-save-cache)
589 (ede-reset-all-buffers))) 591 (ede-reset-all-buffers)))
590 592
@@ -1080,7 +1082,7 @@ Flush the dead projects from the project cache."
1080 (let ((dead nil)) 1082 (let ((dead nil))
1081 (dolist (P ede-projects) 1083 (dolist (P ede-projects)
1082 (when (not (file-exists-p (oref P file))) 1084 (when (not (file-exists-p (oref P file)))
1083 (add-to-list 'dead P))) 1085 (cl-pushnew P dead :test #'equal)))
1084 (dolist (D dead) 1086 (dolist (D dead)
1085 (ede-delete-project-from-global-list D)) 1087 (ede-delete-project-from-global-list D))
1086 )) 1088 ))
@@ -1108,7 +1110,7 @@ Flush the dead projects from the project cache."
1108 "Project file independent way to read a project in from DIR. 1110 "Project file independent way to read a project in from DIR.
1109Optional DETECTIN is an autoload cons from `ede-detect-directory-for-project' 1111Optional DETECTIN is an autoload cons from `ede-detect-directory-for-project'
1110which can be passed in to save time. 1112which can be passed in to save time.
1111Optional ROOTRETURN will return the root project for DIR." 1113Optional ROOTRETURN reference will return the root project for DIR."
1112 ;; Don't do anything if we are in the process of 1114 ;; Don't do anything if we are in the process of
1113 ;; constructing an EDE object. 1115 ;; constructing an EDE object.
1114 ;; 1116 ;;
@@ -1147,7 +1149,8 @@ Optional ROOTRETURN will return the root project for DIR."
1147 (setq o (ede-auto-load-project autoloader toppath)))) 1149 (setq o (ede-auto-load-project autoloader toppath))))
1148 1150
1149 ;; Return the found root project. 1151 ;; Return the found root project.
1150 (when rootreturn (set rootreturn o)) 1152 (when rootreturn (if (symbolp rootreturn) (set rootreturn o)
1153 (setf (gv-deref rootreturn) o)))
1151 1154
1152 ;; The project has been found (in the global list) or loaded from 1155 ;; The project has been found (in the global list) or loaded from
1153 ;; disk (via autoloader.) We can now search for the project asked 1156 ;; disk (via autoloader.) We can now search for the project asked
@@ -1504,6 +1507,8 @@ It does not apply the value to buffers."
1504;;; Integration with project.el 1507;;; Integration with project.el
1505 1508
1506(defun project-try-ede (dir) 1509(defun project-try-ede (dir)
1510 ;; FIXME: This passes the `ROOT' dynbound variable, but I don't know
1511 ;; where it comes from!
1507 (let ((project-dir 1512 (let ((project-dir
1508 (locate-dominating-file 1513 (locate-dominating-file
1509 dir 1514 dir
@@ -1523,7 +1528,7 @@ It does not apply the value to buffers."
1523(provide 'ede) 1528(provide 'ede)
1524 1529
1525;; Include this last because it depends on ede. 1530;; Include this last because it depends on ede.
1526(require 'ede/files) 1531(if t (require 'ede/files)) ;; Don't bother loading it at compile-time.
1527 1532
1528;; If this does not occur after the provide, we can get a recursive 1533;; If this does not occur after the provide, we can get a recursive
1529;; load. Yuck! 1534;; load. Yuck!
diff --git a/lisp/cedet/ede/auto.el b/lisp/cedet/ede/auto.el
index e1417d7806c..ee9d0116af3 100644
--- a/lisp/cedet/ede/auto.el
+++ b/lisp/cedet/ede/auto.el
@@ -1,4 +1,4 @@
1;;; ede/auto.el --- Autoload features for EDE 1;;; ede/auto.el --- Autoload features for EDE -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2010-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2010-2021 Free Software Foundation, Inc.
4 4
@@ -325,13 +325,13 @@ NOTE: Do not call this - it should only be called from `ede-load-project-file'."
325;; See if we can do without them. 325;; See if we can do without them.
326 326
327;; @FIXME - delete from loaddefs to remove this. 327;; @FIXME - delete from loaddefs to remove this.
328(cl-defmethod ede-project-root ((this ede-project-autoload)) 328(cl-defmethod ede-project-root ((_this ede-project-autoload))
329 "If a project knows its root, return it here. 329 "If a project knows its root, return it here.
330Allows for one-project-object-for-a-tree type systems." 330Allows for one-project-object-for-a-tree type systems."
331 nil) 331 nil)
332 332
333;; @FIXME - delete from loaddefs to remove this. 333;; @FIXME - delete from loaddefs to remove this.
334(cl-defmethod ede-project-root-directory ((this ede-project-autoload) &optional file) 334(cl-defmethod ede-project-root-directory ((_this ede-project-autoload) &optional _file)
335 "" nil) 335 "" nil)
336 336
337(provide 'ede/auto) 337(provide 'ede/auto)
diff --git a/lisp/cedet/ede/autoconf-edit.el b/lisp/cedet/ede/autoconf-edit.el
index ca8535fdf23..d6f0a86f9ad 100644
--- a/lisp/cedet/ede/autoconf-edit.el
+++ b/lisp/cedet/ede/autoconf-edit.el
@@ -1,4 +1,4 @@
1;;; ede/autoconf-edit.el --- Keymap for autoconf 1;;; ede/autoconf-edit.el --- Keymap for autoconf -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 1998-2000, 2009-2021 Free Software Foundation, Inc. 3;; Copyright (C) 1998-2000, 2009-2021 Free Software Foundation, Inc.
4 4
diff --git a/lisp/cedet/ede/config.el b/lisp/cedet/ede/config.el
index 19686216cd5..bc1810aa84f 100644
--- a/lisp/cedet/ede/config.el
+++ b/lisp/cedet/ede/config.el
@@ -1,4 +1,4 @@
1;;; ede/config.el --- Configuration Handler baseclass 1;;; ede/config.el --- Configuration Handler baseclass -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2014-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2014-2021 Free Software Foundation, Inc.
4 4
@@ -171,7 +171,7 @@ the directory isn't on the `safe' list, ask to add it to the safe list."
171 (oset config project proj))) 171 (oset config project proj)))
172 config)) 172 config))
173 173
174(cl-defmethod ede-config-setup-configuration ((proj ede-project-with-config) config) 174(cl-defmethod ede-config-setup-configuration ((_proj ede-project-with-config) _config)
175 "Default configuration setup method." 175 "Default configuration setup method."
176 nil) 176 nil)
177 177
@@ -187,7 +187,7 @@ the directory isn't on the `safe' list, ask to add it to the safe list."
187 (let ((config (ede-config-get-configuration proj t))) 187 (let ((config (ede-config-get-configuration proj t)))
188 (eieio-customize-object config))) 188 (eieio-customize-object config)))
189 189
190(cl-defmethod ede-customize ((target ede-target-with-config)) 190(cl-defmethod ede-customize ((_target ede-target-with-config))
191 "Customize the EDE TARGET by actually configuring the config object." 191 "Customize the EDE TARGET by actually configuring the config object."
192 ;; Nothing unique for the targets, use the project. 192 ;; Nothing unique for the targets, use the project.
193 (ede-customize-project)) 193 (ede-customize-project))
@@ -302,14 +302,14 @@ This class brings in method overloads for building.")
302 "Class to mix into a project with configuration for builds. 302 "Class to mix into a project with configuration for builds.
303This class brings in method overloads for building.") 303This class brings in method overloads for building.")
304 304
305(cl-defmethod project-compile-project ((proj ede-project-with-config-build) &optional command) 305(cl-defmethod project-compile-project ((proj ede-project-with-config-build) &optional _command)
306 "Compile the entire current project PROJ. 306 "Compile the entire current project PROJ.
307Argument COMMAND is the command to use when compiling." 307Argument COMMAND is the command to use when compiling."
308 (let* ((config (ede-config-get-configuration proj t)) 308 (let* ((config (ede-config-get-configuration proj t))
309 (comp (oref config build-command))) 309 (comp (oref config build-command)))
310 (compile comp))) 310 (compile comp)))
311 311
312(cl-defmethod project-compile-target ((obj ede-target-with-config-build) &optional command) 312(cl-defmethod project-compile-target ((_obj ede-target-with-config-build) &optional command)
313 "Compile the current target OBJ. 313 "Compile the current target OBJ.
314Argument COMMAND is the command to use for compiling the target." 314Argument COMMAND is the command to use for compiling the target."
315 (project-compile-project (ede-current-project) command)) 315 (project-compile-project (ede-current-project) command))
diff --git a/lisp/cedet/ede/cpp-root.el b/lisp/cedet/ede/cpp-root.el
index 41f0c682892..652d6476f02 100644
--- a/lisp/cedet/ede/cpp-root.el
+++ b/lisp/cedet/ede/cpp-root.el
@@ -1,4 +1,4 @@
1;;; ede/cpp-root.el --- A simple way to wrap a C++ project with a single root 1;;; ede/cpp-root.el --- A simple way to wrap a C++ project with a single root -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2007-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2007-2021 Free Software Foundation, Inc.
4 4
@@ -275,7 +275,7 @@ Each directory needs a project file to control it.")
275;; objects is deleted. 275;; objects is deleted.
276 276
277(cl-defmethod initialize-instance ((this ede-cpp-root-project) 277(cl-defmethod initialize-instance ((this ede-cpp-root-project)
278 &rest fields) 278 &rest _fields)
279 "Make sure the :file is fully expanded." 279 "Make sure the :file is fully expanded."
280 ;; Add ourselves to the master list 280 ;; Add ourselves to the master list
281 (cl-call-next-method) 281 (cl-call-next-method)
@@ -310,7 +310,7 @@ Each directory needs a project file to control it.")
310;; project, simplifying authoring new single-point projects. 310;; project, simplifying authoring new single-point projects.
311 311
312(cl-defmethod ede-find-subproject-for-directory ((proj ede-cpp-root-project) 312(cl-defmethod ede-find-subproject-for-directory ((proj ede-cpp-root-project)
313 dir) 313 _dir)
314 "Return PROJ, for handling all subdirs below DIR." 314 "Return PROJ, for handling all subdirs below DIR."
315 proj) 315 proj)
316 316
@@ -319,7 +319,7 @@ Each directory needs a project file to control it.")
319;; Creating new targets on a per directory basis is a good way to keep 319;; Creating new targets on a per directory basis is a good way to keep
320;; files organized. See ede-emacs for an example with multiple file 320;; files organized. See ede-emacs for an example with multiple file
321;; types. 321;; types.
322(cl-defmethod ede-find-target ((proj ede-cpp-root-project) buffer) 322(cl-defmethod ede-find-target ((proj ede-cpp-root-project) _buffer)
323 "Find an EDE target in PROJ for BUFFER. 323 "Find an EDE target in PROJ for BUFFER.
324If one doesn't exist, create a new one for this directory." 324If one doesn't exist, create a new one for this directory."
325 (let* ((targets (oref proj targets)) 325 (let* ((targets (oref proj targets))
@@ -451,7 +451,7 @@ This is for project include paths and spp source files."
451 "Get the pre-processor map for project THIS." 451 "Get the pre-processor map for project THIS."
452 (ede-preprocessor-map (ede-target-parent this))) 452 (ede-preprocessor-map (ede-target-parent this)))
453 453
454(cl-defmethod project-compile-project ((proj ede-cpp-root-project) &optional command) 454(cl-defmethod project-compile-project ((proj ede-cpp-root-project) &optional _command)
455 "Compile the entire current project PROJ. 455 "Compile the entire current project PROJ.
456Argument COMMAND is the command to use when compiling." 456Argument COMMAND is the command to use when compiling."
457 ;; we need to be in the proj root dir for this to work 457 ;; we need to be in the proj root dir for this to work
@@ -474,7 +474,7 @@ Argument COMMAND is the command to use for compiling the target."
474 (project-compile-project (oref obj project) command))) 474 (project-compile-project (oref obj project) command)))
475 475
476 476
477(cl-defmethod project-rescan ((this ede-cpp-root-project)) 477(cl-defmethod project-rescan ((_this ede-cpp-root-project))
478 "Don't rescan this project from the sources." 478 "Don't rescan this project from the sources."
479 (message "cpp-root has nothing to rescan.")) 479 (message "cpp-root has nothing to rescan."))
480 480
diff --git a/lisp/cedet/ede/custom.el b/lisp/cedet/ede/custom.el
index a128f9e1241..adb1a49cdf7 100644
--- a/lisp/cedet/ede/custom.el
+++ b/lisp/cedet/ede/custom.el
@@ -1,4 +1,4 @@
1;;; ede/custom.el --- customization of EDE projects. 1;;; ede/custom.el --- customization of EDE projects. -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2010-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2010-2021 Free Software Foundation, Inc.
4 4
@@ -97,13 +97,13 @@ OBJ is the target object to customize."
97 "Create a custom-like buffer for sorting targets of current project." 97 "Create a custom-like buffer for sorting targets of current project."
98 (interactive) 98 (interactive)
99 (let ((proj (ede-current-project)) 99 (let ((proj (ede-current-project))
100 (count 1) 100 ;; (count 1)
101 current order) 101 ) ;; current order
102 (switch-to-buffer (get-buffer-create "*EDE sort targets*")) 102 (switch-to-buffer (get-buffer-create "*EDE sort targets*"))
103 (erase-buffer) 103 (erase-buffer)
104 (setq ede-object-project proj) 104 (setq ede-object-project proj)
105 (widget-create 'push-button 105 (widget-create 'push-button
106 :notify (lambda (&rest ignore) 106 :notify (lambda (&rest _ignore)
107 (let ((targets (oref ede-object-project targets)) 107 (let ((targets (oref ede-object-project targets))
108 cur newtargets) 108 cur newtargets)
109 (while (setq cur (pop ede-project-sort-targets-order)) 109 (while (setq cur (pop ede-project-sort-targets-order))
@@ -115,7 +115,7 @@ OBJ is the target object to customize."
115 " Accept ") 115 " Accept ")
116 (widget-insert " ") 116 (widget-insert " ")
117 (widget-create 'push-button 117 (widget-create 'push-button
118 :notify (lambda (&rest ignore) 118 :notify (lambda (&rest _ignore)
119 (kill-buffer)) 119 (kill-buffer))
120 " Cancel ") 120 " Cancel ")
121 (widget-insert "\n\n") 121 (widget-insert "\n\n")
@@ -170,7 +170,9 @@ OBJ is the target object to customize."
170 (widget-insert " ")) 170 (widget-insert " "))
171 (widget-insert (concat " " (number-to-string (1+ count)) ".: " 171 (widget-insert (concat " " (number-to-string (1+ count)) ".: "
172 (oref (nth (nth count ede-project-sort-targets-order) 172 (oref (nth (nth count ede-project-sort-targets-order)
173 targets) name) "\n")) 173 targets)
174 name)
175 "\n"))
174 (setq count (1+ count)))))) 176 (setq count (1+ count))))))
175 177
176;;; Customization hooks 178;;; Customization hooks
@@ -195,11 +197,11 @@ OBJ is the target object to customize."
195;; These two methods should be implemented by subclasses of 197;; These two methods should be implemented by subclasses of
196;; project and targets in order to account for user specified 198;; project and targets in order to account for user specified
197;; changes. 199;; changes.
198(cl-defmethod eieio-done-customizing ((target ede-target)) 200(cl-defmethod eieio-done-customizing ((_target ede-target))
199 "Call this when a user finishes customizing TARGET." 201 "Call this when a user finishes customizing TARGET."
200 nil) 202 nil)
201 203
202(cl-defmethod ede-commit-project ((proj ede-project)) 204(cl-defmethod ede-commit-project ((_proj ede-project))
203 "Commit any change to PROJ to its file." 205 "Commit any change to PROJ to its file."
204 nil 206 nil
205 ) 207 )
diff --git a/lisp/cedet/ede/detect.el b/lisp/cedet/ede/detect.el
index 027d008ea38..c933fc4515e 100644
--- a/lisp/cedet/ede/detect.el
+++ b/lisp/cedet/ede/detect.el
@@ -1,4 +1,4 @@
1;;; ede/detect.el --- EDE project detection and file associations 1;;; ede/detect.el --- EDE project detection and file associations -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2014-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2014-2021 Free Software Foundation, Inc.
4 4
diff --git a/lisp/cedet/ede/dired.el b/lisp/cedet/ede/dired.el
index 8b9eae0b430..27735176c2a 100644
--- a/lisp/cedet/ede/dired.el
+++ b/lisp/cedet/ede/dired.el
@@ -35,11 +35,11 @@
35 35
36(defvar ede-dired-keymap 36(defvar ede-dired-keymap
37 (let ((map (make-sparse-keymap))) 37 (let ((map (make-sparse-keymap)))
38 (define-key map ".a" 'ede-dired-add-to-target) 38 (define-key map ".a" #'ede-dired-add-to-target)
39 (define-key map ".t" 'ede-new-target) 39 (define-key map ".t" #'ede-new-target)
40 (define-key map ".s" 'ede-speedbar) 40 (define-key map ".s" #'ede-speedbar)
41 (define-key map ".C" 'ede-compile-project) 41 (define-key map ".C" #'ede-compile-project)
42 (define-key map ".d" 'ede-make-dist) 42 (define-key map ".d" #'ede-make-dist)
43 43
44 (easy-menu-define 44 (easy-menu-define
45 ede-dired-menu map "EDE Dired Minor Mode Menu" 45 ede-dired-menu map "EDE Dired Minor Mode Menu"
diff --git a/lisp/cedet/ede/files.el b/lisp/cedet/ede/files.el
index cf5396ad00e..6b7e1595646 100644
--- a/lisp/cedet/ede/files.el
+++ b/lisp/cedet/ede/files.el
@@ -1,4 +1,4 @@
1;;; ede/files.el --- Associate projects with files and directories. 1;;; ede/files.el --- Associate projects with files and directories. -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2008-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2008-2021 Free Software Foundation, Inc.
4 4
@@ -33,6 +33,7 @@
33;; till no ede-project-autoload structure matches. 33;; till no ede-project-autoload structure matches.
34;; 34;;
35 35
36(require 'eieio)
36(require 'ede) 37(require 'ede)
37 38
38(declare-function ede-locate-file-in-hash "ede/locate") 39(declare-function ede-locate-file-in-hash "ede/locate")
@@ -75,13 +76,13 @@ Allows for one-project-object-for-a-tree type systems."
75 (oref this rootproject)) 76 (oref this rootproject))
76 77
77(cl-defmethod ede-project-root-directory ((this ede-project-placeholder) 78(cl-defmethod ede-project-root-directory ((this ede-project-placeholder)
78 &optional file) 79 &optional _file)
79 "If a project knows its root, return it here. 80 "If a project knows its root, return it here.
80Allows for one-project-object-for-a-tree type systems. 81Allows for one-project-object-for-a-tree type systems.
81Optional FILE is the file to test. It is ignored in preference 82Optional FILE is the file to test. It is ignored in preference
82of the anchor file for the project." 83of the anchor file for the project."
83 (let ((root (or (ede-project-root this) this))) 84 ;; (let ((root (or (ede-project-root this) this)))
84 (file-name-directory (expand-file-name (oref this file))))) 85 (file-name-directory (expand-file-name (oref this file)))) ;; )
85 86
86 87
87;; Why INODEs? 88;; Why INODEs?
@@ -141,7 +142,7 @@ Does not check subprojects."
141 142
142(defun ede-directory-get-open-project (dir &optional rootreturn) 143(defun ede-directory-get-open-project (dir &optional rootreturn)
143 "Return an already open project that is managing DIR. 144 "Return an already open project that is managing DIR.
144Optional ROOTRETURN specifies a symbol to set to the root project. 145Optional ROOTRETURN specifies a `gv-ref' to set to the root project.
145If DIR is the root project, then it is the same." 146If DIR is the root project, then it is the same."
146 (let* ((inode (ede--inode-for-dir dir)) 147 (let* ((inode (ede--inode-for-dir dir))
147 (ft (file-name-as-directory (expand-file-name dir))) 148 (ft (file-name-as-directory (expand-file-name dir)))
@@ -153,7 +154,8 @@ If DIR is the root project, then it is the same."
153 ;; Default answer is this project 154 ;; Default answer is this project
154 (setq ans proj) 155 (setq ans proj)
155 ;; Save. 156 ;; Save.
156 (when rootreturn (set rootreturn proj)) 157 (when rootreturn (if (symbolp rootreturn) (set rootreturn proj)
158 (setf (gv-deref rootreturn) proj)))
157 ;; Find subprojects. 159 ;; Find subprojects.
158 (when (and proj (if ede--disable-inode 160 (when (and proj (if ede--disable-inode
159 (not (string= ft (expand-file-name 161 (not (string= ft (expand-file-name
@@ -272,7 +274,7 @@ Do this whenever a new project is created, as opposed to loaded."
272 (remhash (file-name-as-directory dir) ede-project-directory-hash) 274 (remhash (file-name-as-directory dir) ede-project-directory-hash)
273 ;; Look for all subdirs of D, and remove them. 275 ;; Look for all subdirs of D, and remove them.
274 (let ((match (concat "^" (regexp-quote dir)))) 276 (let ((match (concat "^" (regexp-quote dir))))
275 (maphash (lambda (K O) 277 (maphash (lambda (K _O)
276 (when (string-match match K) 278 (when (string-match match K)
277 (remhash K ede-project-directory-hash))) 279 (remhash K ede-project-directory-hash)))
278 ede-project-directory-hash))) 280 ede-project-directory-hash)))
@@ -363,7 +365,7 @@ If DIR is not part of a project, return nil."
363 365
364 (t nil)))) 366 (t nil))))
365 367
366(defalias 'ede-toplevel-project-or-nil 'ede-toplevel-project) 368(defalias 'ede-toplevel-project-or-nil #'ede-toplevel-project)
367 369
368;;; DIRECTORY CONVERSION STUFF 370;;; DIRECTORY CONVERSION STUFF
369;; 371;;
@@ -469,15 +471,15 @@ is returned."
469 471
470 ans)) 472 ans))
471 473
472(cl-defmethod ede-expand-filename-impl ((this ede-project) filename &optional force) 474(cl-defmethod ede-expand-filename-impl ((this ede-project) filename &optional _force)
473 "Return a fully qualified file name based on project THIS. 475 "Return a fully qualified file name based on project THIS.
474FILENAME should be just a filename which occurs in a directory controlled 476FILENAME should be just a filename which occurs in a directory controlled
475by this project. 477by this project.
476Optional argument FORCE forces the default filename to be provided even if it 478Optional argument FORCE forces the default filename to be provided even if it
477doesn't exist." 479doesn't exist."
478 (let ((loc (ede-get-locator-object this)) 480 (let ((loc (ede-get-locator-object this))
479 (path (ede-project-root-directory this)) 481 ;; (path (ede-project-root-directory this))
480 (proj (oref this subproj)) 482 ;; (proj (oref this subproj))
481 (found nil)) 483 (found nil))
482 ;; find it Locally. 484 ;; find it Locally.
483 (setq found (or (ede-expand-filename-local this filename) 485 (setq found (or (ede-expand-filename-local this filename)
diff --git a/lisp/cedet/ede/generic.el b/lisp/cedet/ede/generic.el
index 3d1e1c5818e..b3b59b5dc35 100644
--- a/lisp/cedet/ede/generic.el
+++ b/lisp/cedet/ede/generic.el
@@ -1,4 +1,4 @@
1;;; ede/generic.el --- Base Support for generic build systems 1;;; ede/generic.el --- Base Support for generic build systems -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2010-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2010-2021 Free Software Foundation, Inc.
4 4
@@ -93,7 +93,7 @@
93 ) 93 )
94 "User Configuration object for a generic project.") 94 "User Configuration object for a generic project.")
95 95
96(defun ede-generic-load (dir &optional rootproj) 96(defun ede-generic-load (dir &optional _rootproj)
97 "Return a Generic Project object if there is a match. 97 "Return a Generic Project object if there is a match.
98Return nil if there isn't one. 98Return nil if there isn't one.
99Argument DIR is the directory it is created for. 99Argument DIR is the directory it is created for.
@@ -149,7 +149,7 @@ The class allocated value is replace by different sub classes.")
149 :abstract t) 149 :abstract t)
150 150
151(cl-defmethod initialize-instance ((this ede-generic-project) 151(cl-defmethod initialize-instance ((this ede-generic-project)
152 &rest fields) 152 &rest _fields)
153 "Make sure the targets slot is bound." 153 "Make sure the targets slot is bound."
154 (cl-call-next-method) 154 (cl-call-next-method)
155 (unless (slot-boundp this 'targets) 155 (unless (slot-boundp this 'targets)
@@ -161,7 +161,7 @@ The class allocated value is replace by different sub classes.")
161 this) 161 this)
162 162
163(cl-defmethod ede-find-subproject-for-directory ((proj ede-generic-project) 163(cl-defmethod ede-find-subproject-for-directory ((proj ede-generic-project)
164 dir) 164 _dir)
165 "Return PROJ, for handling all subdirs below DIR." 165 "Return PROJ, for handling all subdirs below DIR."
166 proj) 166 proj)
167 167
@@ -324,7 +324,7 @@ CLASS is the EIEIO class that is used to track this project. It should subclass
324 ) 324 )
325 "Generic Project for makefiles.") 325 "Generic Project for makefiles.")
326 326
327(cl-defmethod ede-generic-setup-configuration ((proj ede-generic-makefile-project) config) 327(cl-defmethod ede-generic-setup-configuration ((_proj ede-generic-makefile-project) config)
328 "Setup a configuration for Make." 328 "Setup a configuration for Make."
329 (oset config build-command "make -k") 329 (oset config build-command "make -k")
330 (oset config debug-command "gdb ") 330 (oset config debug-command "gdb ")
@@ -337,7 +337,7 @@ CLASS is the EIEIO class that is used to track this project. It should subclass
337 ) 337 )
338 "Generic Project for scons.") 338 "Generic Project for scons.")
339 339
340(cl-defmethod ede-generic-setup-configuration ((proj ede-generic-scons-project) config) 340(cl-defmethod ede-generic-setup-configuration ((_proj ede-generic-scons-project) config)
341 "Setup a configuration for SCONS." 341 "Setup a configuration for SCONS."
342 (oset config build-command "scons") 342 (oset config build-command "scons")
343 (oset config debug-command "gdb ") 343 (oset config debug-command "gdb ")
@@ -350,7 +350,7 @@ CLASS is the EIEIO class that is used to track this project. It should subclass
350 ) 350 )
351 "Generic Project for cmake.") 351 "Generic Project for cmake.")
352 352
353(cl-defmethod ede-generic-setup-configuration ((proj ede-generic-cmake-project) config) 353(cl-defmethod ede-generic-setup-configuration ((_proj ede-generic-cmake-project) config)
354 "Setup a configuration for CMake." 354 "Setup a configuration for CMake."
355 (oset config build-command "cmake") 355 (oset config build-command "cmake")
356 (oset config debug-command "gdb ") 356 (oset config debug-command "gdb ")
@@ -361,9 +361,9 @@ CLASS is the EIEIO class that is used to track this project. It should subclass
361 () 361 ()
362 "Generic project found via Version Control files.") 362 "Generic project found via Version Control files.")
363 363
364(cl-defmethod ede-generic-setup-configuration ((proj ede-generic-vc-project) config) 364(cl-defmethod ede-generic-setup-configuration ((_proj ede-generic-vc-project) _config)
365 "Setup a configuration for projects identified by revision control." 365 "Setup a configuration for projects identified by revision control."
366 ) 366 nil)
367 367
368(provide 'ede/generic) 368(provide 'ede/generic)
369 369
diff --git a/lisp/cedet/ede/linux.el b/lisp/cedet/ede/linux.el
index 7a1c4c9e262..4b5530d6aca 100644
--- a/lisp/cedet/ede/linux.el
+++ b/lisp/cedet/ede/linux.el
@@ -1,4 +1,4 @@
1;;; ede/linux.el --- Special project for Linux 1;;; ede/linux.el --- Special project for Linux -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2008-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2008-2021 Free Software Foundation, Inc.
4 4
@@ -47,26 +47,22 @@
47(defcustom project-linux-build-directory-default 'ask 47(defcustom project-linux-build-directory-default 'ask
48 "Build directory." 48 "Build directory."
49 :version "24.4" 49 :version "24.4"
50 :group 'project-linux
51 :type '(choice (const :tag "Same as source directory" same) 50 :type '(choice (const :tag "Same as source directory" same)
52 (const :tag "Ask the user" ask))) 51 (const :tag "Ask the user" ask)))
53 52
54(defcustom project-linux-architecture-default 'ask 53(defcustom project-linux-architecture-default 'ask
55 "Target architecture to assume when not auto-detected." 54 "Target architecture to assume when not auto-detected."
56 :version "24.4" 55 :version "24.4"
57 :group 'project-linux
58 :type '(choice (string :tag "Architecture name") 56 :type '(choice (string :tag "Architecture name")
59 (const :tag "Ask the user" ask))) 57 (const :tag "Ask the user" ask)))
60 58
61 59
62(defcustom project-linux-compile-target-command (concat ede-make-command " -k -C %s SUBDIRS=%s") 60(defcustom project-linux-compile-target-command (concat ede-make-command " -k -C %s SUBDIRS=%s")
63 "Default command used to compile a target." 61 "Default command used to compile a target."
64 :group 'project-linux
65 :type 'string) 62 :type 'string)
66 63
67(defcustom project-linux-compile-project-command (concat ede-make-command " -k -C %s") 64(defcustom project-linux-compile-project-command (concat ede-make-command " -k -C %s")
68 "Default command used to compile a project." 65 "Default command used to compile a project."
69 :group 'project-linux
70 :type 'string) 66 :type 'string)
71 67
72(defun ede-linux-version (dir) 68(defun ede-linux-version (dir)
diff --git a/lisp/cedet/ede/locate.el b/lisp/cedet/ede/locate.el
index e6a89533cca..016092cd8bf 100644
--- a/lisp/cedet/ede/locate.el
+++ b/lisp/cedet/ede/locate.el
@@ -1,4 +1,4 @@
1;;; ede/locate.el --- Locate support 1;;; ede/locate.el --- Locate support -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2008-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2008-2021 Free Software Foundation, Inc.
4 4
@@ -110,7 +110,7 @@ based on `ede-locate-setup-options'."
110 ) 110 )
111 "Baseclass for LOCATE feature in EDE.") 111 "Baseclass for LOCATE feature in EDE.")
112 112
113(cl-defmethod initialize-instance ((loc ede-locate-base) &rest fields) 113(cl-defmethod initialize-instance ((loc ede-locate-base) &rest _fields)
114 "Make sure we have a hash table." 114 "Make sure we have a hash table."
115 ;; Basic setup. 115 ;; Basic setup.
116 (cl-call-next-method) 116 (cl-call-next-method)
@@ -118,8 +118,8 @@ based on `ede-locate-setup-options'."
118 (ede-locate-flush-hash loc) 118 (ede-locate-flush-hash loc)
119 ) 119 )
120 120
121(cl-defmethod ede-locate-ok-in-project ((loc (subclass ede-locate-base)) 121(cl-defmethod ede-locate-ok-in-project ((_loc (subclass ede-locate-base))
122 root) 122 _root)
123 "Is it ok to use this project type under ROOT." 123 "Is it ok to use this project type under ROOT."
124 t) 124 t)
125 125
@@ -149,17 +149,15 @@ that created this EDE locate object."
149 (oset loc lastanswer ans) 149 (oset loc lastanswer ans)
150 ans)) 150 ans))
151 151
152(cl-defmethod ede-locate-file-in-project-impl ((loc ede-locate-base) 152(cl-defmethod ede-locate-file-in-project-impl ((_loc ede-locate-base)
153 filesubstring 153 _filesubstring)
154 )
155 "Locate with LOC occurrences of FILESUBSTRING. 154 "Locate with LOC occurrences of FILESUBSTRING.
156Searches are done under the current root of the EDE project 155Searches are done under the current root of the EDE project
157that created this EDE locate object." 156that created this EDE locate object."
158 nil 157 nil)
159 )
160 158
161(cl-defmethod ede-locate-create/update-root-database 159(cl-defmethod ede-locate-create/update-root-database
162 ((loc (subclass ede-locate-base)) root) 160 ((loc (subclass ede-locate-base)) _root)
163 "Create or update the database for the current project. 161 "Create or update the database for the current project.
164You cannot create projects for the baseclass." 162You cannot create projects for the baseclass."
165 (error "Cannot create/update a database of type %S" 163 (error "Cannot create/update a database of type %S"
@@ -177,8 +175,8 @@ You cannot create projects for the baseclass."
177Configure the Emacs `locate-program' variable to also 175Configure the Emacs `locate-program' variable to also
178configure the use of EDE locate.") 176configure the use of EDE locate.")
179 177
180(cl-defmethod ede-locate-ok-in-project ((loc (subclass ede-locate-locate)) 178(cl-defmethod ede-locate-ok-in-project ((_loc (subclass ede-locate-locate))
181 root) 179 _root)
182 "Is it ok to use this project type under ROOT." 180 "Is it ok to use this project type under ROOT."
183 (or (featurep 'locate) (locate-library "locate")) 181 (or (featurep 'locate) (locate-library "locate"))
184 ) 182 )
@@ -198,7 +196,7 @@ that created this EDE locate object."
198 (with-current-buffer b 196 (with-current-buffer b
199 (setq default-directory cd) 197 (setq default-directory cd)
200 (erase-buffer)) 198 (erase-buffer))
201 (apply 'call-process locate-command 199 (apply #'call-process locate-command
202 nil b nil 200 nil b nil
203 searchstr nil) 201 searchstr nil)
204 (with-current-buffer b 202 (with-current-buffer b
@@ -221,7 +219,7 @@ Configure EDE's use of GNU Global through the cedet-global.el
221variable `cedet-global-command'.") 219variable `cedet-global-command'.")
222 220
223(cl-defmethod initialize-instance ((loc ede-locate-global) 221(cl-defmethod initialize-instance ((loc ede-locate-global)
224 &rest slots) 222 &rest _slots)
225 "Make sure that we can use GNU Global." 223 "Make sure that we can use GNU Global."
226 (require 'cedet-global) 224 (require 'cedet-global)
227 ;; Get ourselves initialized. 225 ;; Get ourselves initialized.
@@ -235,8 +233,8 @@ variable `cedet-global-command'.")
235 (oref loc root)))) 233 (oref loc root))))
236 ) 234 )
237 235
238(cl-defmethod ede-locate-ok-in-project ((loc (subclass ede-locate-global)) 236(cl-defmethod ede-locate-ok-in-project ((_loc (subclass ede-locate-global))
239 root) 237 root)
240 "Is it ok to use this project type under ROOT." 238 "Is it ok to use this project type under ROOT."
241 (require 'cedet-global) 239 (require 'cedet-global)
242 (cedet-gnu-global-version-check) 240 (cedet-gnu-global-version-check)
@@ -252,7 +250,7 @@ variable `cedet-global-command'.")
252 (cedet-gnu-global-expand-filename filesubstring))) 250 (cedet-gnu-global-expand-filename filesubstring)))
253 251
254(cl-defmethod ede-locate-create/update-root-database 252(cl-defmethod ede-locate-create/update-root-database
255 ((loc (subclass ede-locate-global)) root) 253 ((_loc (subclass ede-locate-global)) root)
256 "Create or update the GNU Global database for the current project." 254 "Create or update the GNU Global database for the current project."
257 (cedet-gnu-global-create/update-database root)) 255 (cedet-gnu-global-create/update-database root))
258 256
@@ -271,7 +269,7 @@ Configure EDE's use of IDUtils through the cedet-idutils.el
271file name searching variable `cedet-idutils-file-command'.") 269file name searching variable `cedet-idutils-file-command'.")
272 270
273(cl-defmethod initialize-instance ((loc ede-locate-idutils) 271(cl-defmethod initialize-instance ((loc ede-locate-idutils)
274 &rest slots) 272 &rest _slots)
275 "Make sure that we can use IDUtils." 273 "Make sure that we can use IDUtils."
276 ;; Get ourselves initialized. 274 ;; Get ourselves initialized.
277 (cl-call-next-method) 275 (cl-call-next-method)
@@ -283,8 +281,8 @@ file name searching variable `cedet-idutils-file-command'.")
283 (oref loc root))) 281 (oref loc root)))
284 ) 282 )
285 283
286(cl-defmethod ede-locate-ok-in-project ((loc (subclass ede-locate-idutils)) 284(cl-defmethod ede-locate-ok-in-project ((_loc (subclass ede-locate-idutils))
287 root) 285 root)
288 "Is it ok to use this project type under ROOT." 286 "Is it ok to use this project type under ROOT."
289 (require 'cedet-idutils) 287 (require 'cedet-idutils)
290 (cedet-idutils-version-check) 288 (cedet-idutils-version-check)
@@ -301,7 +299,7 @@ that created this EDE locate object."
301 (cedet-idutils-expand-filename filesubstring))) 299 (cedet-idutils-expand-filename filesubstring)))
302 300
303(cl-defmethod ede-locate-create/update-root-database 301(cl-defmethod ede-locate-create/update-root-database
304 ((loc (subclass ede-locate-idutils)) root) 302 ((_loc (subclass ede-locate-idutils)) root)
305 "Create or update the GNU Global database for the current project." 303 "Create or update the GNU Global database for the current project."
306 (cedet-idutils-create/update-database root)) 304 (cedet-idutils-create/update-database root))
307 305
@@ -320,7 +318,7 @@ Configure EDE's use of Cscope through the cedet-cscope.el
320file name searching variable `cedet-cscope-file-command'.") 318file name searching variable `cedet-cscope-file-command'.")
321 319
322(cl-defmethod initialize-instance ((loc ede-locate-cscope) 320(cl-defmethod initialize-instance ((loc ede-locate-cscope)
323 &rest slots) 321 &rest _slots)
324 "Make sure that we can use Cscope." 322 "Make sure that we can use Cscope."
325 ;; Get ourselves initialized. 323 ;; Get ourselves initialized.
326 (cl-call-next-method) 324 (cl-call-next-method)
@@ -332,8 +330,8 @@ file name searching variable `cedet-cscope-file-command'.")
332 (oref loc root))) 330 (oref loc root)))
333 ) 331 )
334 332
335(cl-defmethod ede-locate-ok-in-project ((loc (subclass ede-locate-cscope)) 333(cl-defmethod ede-locate-ok-in-project ((_loc (subclass ede-locate-cscope))
336 root) 334 root)
337 "Is it ok to use this project type under ROOT." 335 "Is it ok to use this project type under ROOT."
338 (require 'cedet-cscope) 336 (require 'cedet-cscope)
339 (cedet-cscope-version-check) 337 (cedet-cscope-version-check)
@@ -350,7 +348,7 @@ that created this EDE locate object."
350 (cedet-cscope-expand-filename filesubstring))) 348 (cedet-cscope-expand-filename filesubstring)))
351 349
352(cl-defmethod ede-locate-create/update-root-database 350(cl-defmethod ede-locate-create/update-root-database
353 ((loc (subclass ede-locate-cscope)) root) 351 ((_loc (subclass ede-locate-cscope)) root)
354 "Create or update the Cscope database for the current project." 352 "Create or update the Cscope database for the current project."
355 (require 'cedet-cscope) 353 (require 'cedet-cscope)
356 (cedet-cscope-create/update-database root)) 354 (cedet-cscope-create/update-database root))
diff --git a/lisp/cedet/ede/makefile-edit.el b/lisp/cedet/ede/makefile-edit.el
index 43655a5d1e3..d6965945494 100644
--- a/lisp/cedet/ede/makefile-edit.el
+++ b/lisp/cedet/ede/makefile-edit.el
@@ -1,4 +1,4 @@
1;;; makefile-edit.el --- Makefile editing/scanning commands. 1;;; makefile-edit.el --- Makefile editing/scanning commands. -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2009-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2009-2021 Free Software Foundation, Inc.
4 4
diff --git a/lisp/cedet/ede/pconf.el b/lisp/cedet/ede/pconf.el
index 5bed32ff058..106ba2cf5b9 100644
--- a/lisp/cedet/ede/pconf.el
+++ b/lisp/cedet/ede/pconf.el
@@ -1,4 +1,4 @@
1;;; ede/pconf.el --- configure.ac maintenance for EDE 1;;; ede/pconf.el --- configure.ac maintenance for EDE -*- lexical-binding: t; -*-
2 2
3;;; Copyright (C) 1998-2000, 2005, 2008-2021 Free Software Foundation, 3;;; Copyright (C) 1998-2000, 2005, 2008-2021 Free Software Foundation,
4;;; Inc. 4;;; Inc.
@@ -67,7 +67,7 @@ don't do it. A value of nil means to just do it.")
67 ;;(td (file-name-directory (ede-proj-configure-file this))) 67 ;;(td (file-name-directory (ede-proj-configure-file this)))
68 (targs (oref this targets)) 68 (targs (oref this targets))
69 (postcmd "") 69 (postcmd "")
70 (add-missing nil)) 70 ) ;; (add-missing nil)
71 ;; First, make sure we have a file. 71 ;; First, make sure we have a file.
72 (if (not (file-exists-p (ede-proj-configure-file this))) 72 (if (not (file-exists-p (ede-proj-configure-file this)))
73 (autoconf-new-program b (oref this name) "Project.ede")) 73 (autoconf-new-program b (oref this name) "Project.ede"))
@@ -97,7 +97,7 @@ don't do it. A value of nil means to just do it.")
97 (ede-map-targets sp #'ede-proj-flush-autoconf))) 97 (ede-map-targets sp #'ede-proj-flush-autoconf)))
98 (ede-map-all-subprojects 98 (ede-map-all-subprojects
99 this 99 this
100 (lambda (sp) 100 (lambda (_sp)
101 (ede-map-targets this #'ede-proj-tweak-autoconf))) 101 (ede-map-targets this #'ede-proj-tweak-autoconf)))
102 ;; Now save 102 ;; Now save
103 (save-buffer) 103 (save-buffer)
@@ -109,14 +109,15 @@ don't do it. A value of nil means to just do it.")
109 (ede-proj-configure-test-required-file this "README") 109 (ede-proj-configure-test-required-file this "README")
110 (ede-proj-configure-test-required-file this "ChangeLog") 110 (ede-proj-configure-test-required-file this "ChangeLog")
111 ;; Let specific targets get missing files. 111 ;; Let specific targets get missing files.
112 (mapc 'ede-proj-configure-create-missing targs) 112 (mapc #'ede-proj-configure-create-missing targs)
113 ;; Verify that we have a make system. 113 ;; Verify that we have a make system.
114 (if (or (not (ede-expand-filename (ede-toplevel this) "Makefile")) 114 (if (or (not (ede-expand-filename (ede-toplevel this) "Makefile"))
115 ;; Now is this one of our old Makefiles? 115 ;; Now is this one of our old Makefiles?
116 (with-current-buffer 116 (with-current-buffer
117 (find-file-noselect 117 (find-file-noselect
118 (ede-expand-filename (ede-toplevel this) 118 (ede-expand-filename (ede-toplevel this)
119 "Makefile" t) t) 119 "Makefile" t)
120 t)
120 (goto-char (point-min)) 121 (goto-char (point-min))
121 ;; Here is the unique piece for our makefiles. 122 ;; Here is the unique piece for our makefiles.
122 (re-search-forward "For use with: make" nil t))) 123 (re-search-forward "For use with: make" nil t)))
@@ -166,11 +167,11 @@ don't do it. A value of nil means to just do it.")
166 "Tweak the configure file (current buffer) to accommodate THIS." 167 "Tweak the configure file (current buffer) to accommodate THIS."
167 ;; Check the compilers belonging to THIS, and call the autoconf 168 ;; Check the compilers belonging to THIS, and call the autoconf
168 ;; setup for those compilers. 169 ;; setup for those compilers.
169 (mapc 'ede-proj-tweak-autoconf (ede-proj-compilers this)) 170 (mapc #'ede-proj-tweak-autoconf (ede-proj-compilers this))
170 (mapc 'ede-proj-tweak-autoconf (ede-proj-linkers this)) 171 (mapc #'ede-proj-tweak-autoconf (ede-proj-linkers this))
171 ) 172 )
172 173
173(cl-defmethod ede-proj-flush-autoconf ((this ede-proj-target)) 174(cl-defmethod ede-proj-flush-autoconf ((_this ede-proj-target))
174 "Flush the configure file (current buffer) to accommodate THIS. 175 "Flush the configure file (current buffer) to accommodate THIS.
175By flushing, remove any cruft that may be in the file. Subsequent 176By flushing, remove any cruft that may be in the file. Subsequent
176calls to `ede-proj-tweak-autoconf' can restore items removed by flush." 177calls to `ede-proj-tweak-autoconf' can restore items removed by flush."
@@ -178,13 +179,13 @@ calls to `ede-proj-tweak-autoconf' can restore items removed by flush."
178 179
179 180
180;; @TODO - No-one calls this ??? 181;; @TODO - No-one calls this ???
181(cl-defmethod ede-proj-configure-add-missing ((this ede-proj-target)) 182(cl-defmethod ede-proj-configure-add-missing ((_this ede-proj-target))
182 "Query if any files needed by THIS provided by automake are missing. 183 "Query if any files needed by THIS provided by automake are missing.
183Results in --add-missing being passed to automake." 184Results in --add-missing being passed to automake."
184 nil) 185 nil)
185 186
186;; @TODO - No-one implements this yet. 187;; @TODO - No-one implements this yet.
187(cl-defmethod ede-proj-configure-create-missing ((this ede-proj-target)) 188(cl-defmethod ede-proj-configure-create-missing ((_this ede-proj-target))
188 "Add any missing files for THIS by creating them." 189 "Add any missing files for THIS by creating them."
189 nil) 190 nil)
190 191
diff --git a/lisp/cedet/ede/pmake.el b/lisp/cedet/ede/pmake.el
index 47bb0c61eb4..ceb44031f6a 100644
--- a/lisp/cedet/ede/pmake.el
+++ b/lisp/cedet/ede/pmake.el
@@ -46,6 +46,7 @@
46(require 'ede/proj) 46(require 'ede/proj)
47(require 'ede/proj-obj) 47(require 'ede/proj-obj)
48(require 'ede/proj-comp) 48(require 'ede/proj-comp)
49(require 'seq)
49 50
50(declare-function ede-srecode-setup "ede/srecode") 51(declare-function ede-srecode-setup "ede/srecode")
51(declare-function ede-srecode-insert "ede/srecode") 52(declare-function ede-srecode-insert "ede/srecode")
@@ -111,13 +112,13 @@ MFILENAME is the makefile to generate."
111 112
112 (let* ((targ (if isdist (oref this targets) mt)) 113 (let* ((targ (if isdist (oref this targets) mt))
113 (sp (oref this subproj)) 114 (sp (oref this subproj))
114 (df (apply 'append 115 (df (apply #'append
115 (mapcar (lambda (tg) 116 (mapcar (lambda (tg)
116 (ede-proj-makefile-dependency-files tg)) 117 (ede-proj-makefile-dependency-files tg))
117 targ)))) 118 targ))))
118 ;; Distribution variables 119 ;; Distribution variables
119 (ede-compiler-begin-unique 120 (ede-compiler-begin-unique
120 (mapc 'ede-proj-makefile-insert-variables targ)) 121 (mapc #'ede-proj-makefile-insert-variables targ))
121 ;; Only add the distribution stuff in when depth != 0 122 ;; Only add the distribution stuff in when depth != 0
122 (let ((top (ede-toplevel this)) 123 (let ((top (ede-toplevel this))
123 (tmp this) 124 (tmp this)
@@ -153,7 +154,8 @@ MFILENAME is the makefile to generate."
153 (concat ".deps/" 154 (concat ".deps/"
154 (file-name-nondirectory 155 (file-name-nondirectory
155 (file-name-sans-extension 156 (file-name-sans-extension
156 f)) ".P")) 157 f))
158 ".P"))
157 df " ")))) 159 df " "))))
158 ;; 160 ;;
159 ;; Insert ALL Rule 161 ;; Insert ALL Rule
@@ -188,11 +190,11 @@ MFILENAME is the makefile to generate."
188 ;; 190 ;;
189 (ede-compiler-begin-unique 191 (ede-compiler-begin-unique
190 (ede-proj-makefile-insert-rules this) 192 (ede-proj-makefile-insert-rules this)
191 (mapc 'ede-proj-makefile-insert-rules targ)) 193 (mapc #'ede-proj-makefile-insert-rules targ))
192 ;; 194 ;;
193 ;; phony targets for sub projects 195 ;; phony targets for sub projects
194 ;; 196 ;;
195 (mapc 'ede-proj-makefile-insert-subproj-rules sp) 197 (mapc #'ede-proj-makefile-insert-subproj-rules sp)
196 ;; 198 ;;
197 ;; Distribution rules such as CLEAN and DIST 199 ;; Distribution rules such as CLEAN and DIST
198 ;; 200 ;;
@@ -210,11 +212,11 @@ MFILENAME is the makefile to generate."
210 ;; Distribution variables 212 ;; Distribution variables
211 (let ((targ (if isdist (oref this targets) mt))) 213 (let ((targ (if isdist (oref this targets) mt)))
212 (ede-compiler-begin-unique 214 (ede-compiler-begin-unique
213 (mapc 'ede-proj-makefile-insert-automake-pre-variables targ)) 215 (mapc #'ede-proj-makefile-insert-automake-pre-variables targ))
214 (ede-compiler-begin-unique 216 (ede-compiler-begin-unique
215 (mapc 'ede-proj-makefile-insert-source-variables targ)) 217 (mapc #'ede-proj-makefile-insert-source-variables targ))
216 (ede-compiler-begin-unique 218 (ede-compiler-begin-unique
217 (mapc 'ede-proj-makefile-insert-automake-post-variables targ)) 219 (mapc #'ede-proj-makefile-insert-automake-post-variables targ))
218 (ede-compiler-begin-unique 220 (ede-compiler-begin-unique
219 (ede-proj-makefile-insert-user-rules this)) 221 (ede-proj-makefile-insert-user-rules this))
220 (insert "\n# End of Makefile.am\n") 222 (insert "\n# End of Makefile.am\n")
@@ -464,9 +466,9 @@ sources variable."
464 "Return a list of patterns that are considered garbage to THIS. 466 "Return a list of patterns that are considered garbage to THIS.
465These are removed with make clean." 467These are removed with make clean."
466 (let ((mc (ede-map-targets 468 (let ((mc (ede-map-targets
467 this (lambda (c) (ede-proj-makefile-garbage-patterns c)))) 469 this #'ede-proj-makefile-garbage-patterns))
468 (uniq nil)) 470 (uniq nil))
469 (setq mc (sort (apply 'append mc) 'string<)) 471 (setq mc (sort (apply #'append mc) #'string<))
470 ;; Filter out duplicates from the targets. 472 ;; Filter out duplicates from the targets.
471 (while mc 473 (while mc
472 (if (and (car uniq) (string= (car uniq) (car mc))) 474 (if (and (car uniq) (string= (car uniq) (car mc)))
@@ -502,13 +504,13 @@ These are removed with make clean."
502 504
503(cl-defmethod ede-proj-makefile-insert-rules ((this ede-proj-project)) 505(cl-defmethod ede-proj-makefile-insert-rules ((this ede-proj-project))
504 "Insert rules needed by THIS target." 506 "Insert rules needed by THIS target."
505 (mapc 'ede-proj-makefile-insert-rules (oref this inference-rules)) 507 (mapc #'ede-proj-makefile-insert-rules (oref this inference-rules))
506 ) 508 )
507 509
508(cl-defmethod ede-proj-makefile-insert-dist-dependencies ((this ede-proj-project)) 510(cl-defmethod ede-proj-makefile-insert-dist-dependencies ((this ede-proj-project))
509 "Insert any symbols that the DIST rule should depend on. 511 "Insert any symbols that the DIST rule should depend on.
510Argument THIS is the project that should insert stuff." 512Argument THIS is the project that should insert stuff."
511 (mapc 'ede-proj-makefile-insert-dist-dependencies (oref this targets)) 513 (mapc #'ede-proj-makefile-insert-dist-dependencies (oref this targets))
512 ) 514 )
513 515
514(cl-defmethod ede-proj-makefile-insert-dist-dependencies ((_this ede-proj-target)) 516(cl-defmethod ede-proj-makefile-insert-dist-dependencies ((_this ede-proj-target))
@@ -608,10 +610,10 @@ Argument THIS is the target that should insert stuff."
608 610
609(cl-defmethod ede-proj-makefile-insert-rules ((this ede-proj-target-makefile)) 611(cl-defmethod ede-proj-makefile-insert-rules ((this ede-proj-target-makefile))
610 "Insert rules needed by THIS target." 612 "Insert rules needed by THIS target."
611 (mapc 'ede-proj-makefile-insert-rules (oref this rules)) 613 (mapc #'ede-proj-makefile-insert-rules (oref this rules))
612 (let ((c (ede-proj-compilers this))) 614 (let ((c (ede-proj-compilers this)))
613 (when c 615 (when c
614 (mapc 'ede-proj-makefile-insert-rules c) 616 (mapc #'ede-proj-makefile-insert-rules c)
615 (if (oref this phony) 617 (if (oref this phony)
616 (insert ".PHONY: " (ede-proj-makefile-target-name this) "\n")) 618 (insert ".PHONY: " (ede-proj-makefile-target-name this) "\n"))
617 (insert (ede-proj-makefile-target-name this) ": " 619 (insert (ede-proj-makefile-target-name this) ": "
@@ -622,9 +624,9 @@ Argument THIS is the target that should insert stuff."
622(cl-defmethod ede-proj-makefile-insert-commands ((this ede-proj-target-makefile)) 624(cl-defmethod ede-proj-makefile-insert-commands ((this ede-proj-target-makefile))
623 "Insert the commands needed by target THIS. 625 "Insert the commands needed by target THIS.
624For targets, insert the commands needed by the chosen compiler." 626For targets, insert the commands needed by the chosen compiler."
625 (mapc 'ede-proj-makefile-insert-commands (ede-proj-compilers this)) 627 (mapc #'ede-proj-makefile-insert-commands (ede-proj-compilers this))
626 (when (object-assoc t :uselinker (ede-proj-compilers this)) 628 (when (object-assoc t :uselinker (ede-proj-compilers this))
627 (mapc 'ede-proj-makefile-insert-commands (ede-proj-linkers this)))) 629 (mapc #'ede-proj-makefile-insert-commands (ede-proj-linkers this))))
628 630
629 631
630(cl-defmethod ede-proj-makefile-insert-user-rules ((this ede-proj-project)) 632(cl-defmethod ede-proj-makefile-insert-user-rules ((this ede-proj-project))
@@ -632,11 +634,11 @@ For targets, insert the commands needed by the chosen compiler."
632This is different from `ede-proj-makefile-insert-rules' in that this 634This is different from `ede-proj-makefile-insert-rules' in that this
633function won't create the building rules which are auto created with 635function won't create the building rules which are auto created with
634automake." 636automake."
635 (mapc 'ede-proj-makefile-insert-user-rules (oref this inference-rules))) 637 (mapc #'ede-proj-makefile-insert-user-rules (oref this inference-rules)))
636 638
637(cl-defmethod ede-proj-makefile-insert-user-rules ((this ede-proj-target)) 639(cl-defmethod ede-proj-makefile-insert-user-rules ((this ede-proj-target))
638 "Insert user specified rules needed by THIS target." 640 "Insert user specified rules needed by THIS target."
639 (mapc 'ede-proj-makefile-insert-rules (oref this rules))) 641 (mapc #'ede-proj-makefile-insert-rules (oref this rules)))
640 642
641(cl-defmethod ede-proj-makefile-dependencies ((this ede-proj-target-makefile)) 643(cl-defmethod ede-proj-makefile-dependencies ((this ede-proj-target-makefile))
642 "Return a string representing the dependencies for THIS. 644 "Return a string representing the dependencies for THIS.
@@ -644,7 +646,7 @@ Some compilers only use the first element in the dependencies, others
644have a list of intermediates (object files), and others don't care. 646have a list of intermediates (object files), and others don't care.
645This allows customization of how these elements appear." 647This allows customization of how these elements appear."
646 (let* ((c (ede-proj-compilers this)) 648 (let* ((c (ede-proj-compilers this))
647 (io (eval (cons 'or (mapcar 'ede-compiler-intermediate-objects-p c)))) 649 (io (seq-some #'ede-compiler-intermediate-objects-p c))
648 (out nil)) 650 (out nil))
649 (if io 651 (if io
650 (progn 652 (progn
@@ -652,7 +654,8 @@ This allows customization of how these elements appear."
652 (setq out 654 (setq out
653 (concat out "$(" (ede-compiler-intermediate-object-variable 655 (concat out "$(" (ede-compiler-intermediate-object-variable
654 (car c) 656 (car c)
655 (ede-proj-makefile-target-name this)) ")") 657 (ede-proj-makefile-target-name this))
658 ")")
656 c (cdr c))) 659 c (cdr c)))
657 out) 660 out)
658 (let ((sv (ede-proj-makefile-sourcevar this)) 661 (let ((sv (ede-proj-makefile-sourcevar this))
diff --git a/lisp/cedet/ede/proj-comp.el b/lisp/cedet/ede/proj-comp.el
index 397354ad9c0..1d6a4eb47cd 100644
--- a/lisp/cedet/ede/proj-comp.el
+++ b/lisp/cedet/ede/proj-comp.el
@@ -309,7 +309,7 @@ Not all compilers do this."
309(cl-defmethod ede-proj-makefile-insert-rules ((this ede-compilation-program)) 309(cl-defmethod ede-proj-makefile-insert-rules ((this ede-compilation-program))
310 "Insert rules needed for THIS compiler object." 310 "Insert rules needed for THIS compiler object."
311 (ede-compiler-only-once this 311 (ede-compiler-only-once this
312 (mapc 'ede-proj-makefile-insert-rules (oref this rules)))) 312 (mapc #'ede-proj-makefile-insert-rules (oref this rules))))
313 313
314(cl-defmethod ede-proj-makefile-insert-rules ((this ede-makefile-rule)) 314(cl-defmethod ede-proj-makefile-insert-rules ((this ede-makefile-rule))
315 "Insert rules needed for THIS rule object." 315 "Insert rules needed for THIS rule object."
diff --git a/lisp/cedet/ede/proj-elisp.el b/lisp/cedet/ede/proj-elisp.el
index 9ec96945c10..7e0f5a89346 100644
--- a/lisp/cedet/ede/proj-elisp.el
+++ b/lisp/cedet/ede/proj-elisp.el
@@ -1,4 +1,4 @@
1;;; ede-proj-elisp.el --- EDE Generic Project Emacs Lisp support 1;;; ede-proj-elisp.el --- EDE Generic Project Emacs Lisp support -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 1998-2005, 2007-2021 Free Software Foundation, Inc. 3;; Copyright (C) 1998-2005, 2007-2021 Free Software Foundation, Inc.
4 4
@@ -64,7 +64,7 @@ This inserts the PRELOADS target-local variable."
64 (when preloads 64 (when preloads
65 (insert (format "%s: PRELOADS=%s\n" 65 (insert (format "%s: PRELOADS=%s\n"
66 (oref this name) 66 (oref this name)
67 (mapconcat 'identity preloads " "))))) 67 (mapconcat #'identity preloads " ")))))
68 (insert "\n")) 68 (insert "\n"))
69 69
70(cl-defmethod ede-proj-makefile-dependencies ((this ede-proj-target-elisp)) 70(cl-defmethod ede-proj-makefile-dependencies ((this ede-proj-target-elisp))
@@ -152,7 +152,7 @@ Bonus: Return a cons cell: (COMPILED . UPTODATE)."
152 (utd 0)) 152 (utd 0))
153 (mapc (lambda (src) 153 (mapc (lambda (src)
154 (let* ((fsrc (expand-file-name src dir)) 154 (let* ((fsrc (expand-file-name src dir))
155 (elc (concat (file-name-sans-extension fsrc) ".elc"))) 155 ) ;; (elc (concat (file-name-sans-extension fsrc) ".elc"))
156 (with-no-warnings 156 (with-no-warnings
157 (if (eq (byte-recompile-file fsrc nil 0) t) 157 (if (eq (byte-recompile-file fsrc nil 0) t)
158 (setq comp (1+ comp)) 158 (setq comp (1+ comp))
@@ -169,7 +169,7 @@ is found, such as a `-version' variable, or the standard header."
169 (if (and (slot-boundp this 'versionsource) 169 (if (and (slot-boundp this 'versionsource)
170 (oref this versionsource)) 170 (oref this versionsource))
171 (let ((vs (oref this versionsource)) 171 (let ((vs (oref this versionsource))
172 (match nil)) 172 ) ;; (match nil)
173 (while vs 173 (while vs
174 (with-current-buffer (find-file-noselect 174 (with-current-buffer (find-file-noselect
175 (ede-expand-filename this (car vs))) 175 (ede-expand-filename this (car vs)))
@@ -177,7 +177,7 @@ is found, such as a `-version' variable, or the standard header."
177 (let ((case-fold-search t)) 177 (let ((case-fold-search t))
178 (if (re-search-forward "-version\\s-+\"\\([^\"]+\\)\"" nil t) 178 (if (re-search-forward "-version\\s-+\"\\([^\"]+\\)\"" nil t)
179 (progn 179 (progn
180 (setq match t) 180 ;; (setq match t)
181 (delete-region (match-beginning 1) 181 (delete-region (match-beginning 1)
182 (match-end 1)) 182 (match-end 1))
183 (goto-char (match-beginning 1)) 183 (goto-char (match-beginning 1))
@@ -331,27 +331,27 @@ Lays claim to all .elc files that match .el files in this target."
331If the `compiler' slot is empty, get the car of the compilers list." 331If the `compiler' slot is empty, get the car of the compilers list."
332 (let ((comp (oref obj compiler))) 332 (let ((comp (oref obj compiler)))
333 (if comp 333 (if comp
334 (if (listp comp) 334 (setq comp (if (listp comp)
335 (setq comp (mapcar 'symbol-value comp)) 335 (mapcar #'symbol-value comp)
336 (setq comp (list (symbol-value comp)))) 336 (list (symbol-value comp))))
337 ;; Get the first element from our list of compilers. 337 ;; Get the first element from our list of compilers.
338 (let ((avail (mapcar 'symbol-value (oref obj availablecompilers)))) 338 (let ((avail (mapcar #'symbol-value (oref obj availablecompilers))))
339 (setq comp (list (car avail))))) 339 (setq comp (list (car avail)))))
340 comp)) 340 comp))
341 341
342(cl-defmethod ede-proj-makefile-insert-source-variables ((this ede-proj-target-elisp-autoloads) 342(cl-defmethod ede-proj-makefile-insert-source-variables ((_this ede-proj-target-elisp-autoloads)
343 &optional 343 &optional
344 moresource) 344 _moresource)
345 "Insert the source variables needed by THIS. 345 "Insert the source variables needed by THIS.
346Optional argument MORESOURCE is a list of additional sources to add to the 346Optional argument MORESOURCE is a list of additional sources to add to the
347sources variable." 347sources variable."
348 nil) 348 nil)
349 349
350(cl-defmethod ede-proj-makefile-sourcevar ((this ede-proj-target-elisp-autoloads)) 350(cl-defmethod ede-proj-makefile-sourcevar ((_this ede-proj-target-elisp-autoloads))
351 "Return the variable name for THIS's sources." 351 "Return the variable name for THIS's sources."
352 nil) ; "LOADDEFS") 352 nil) ; "LOADDEFS")
353 353
354(cl-defmethod ede-proj-makefile-dependencies ((this ede-proj-target-elisp-autoloads)) 354(cl-defmethod ede-proj-makefile-dependencies ((_this ede-proj-target-elisp-autoloads))
355 "Return a string representing the dependencies for THIS. 355 "Return a string representing the dependencies for THIS.
356Always return an empty string for an autoloads generator." 356Always return an empty string for an autoloads generator."
357 "") 357 "")
@@ -361,21 +361,22 @@ Always return an empty string for an autoloads generator."
361 (ede-pmake-insert-variable-shared "LOADDEFS" 361 (ede-pmake-insert-variable-shared "LOADDEFS"
362 (insert (oref this autoload-file))) 362 (insert (oref this autoload-file)))
363 (ede-pmake-insert-variable-shared "LOADDIRS" 363 (ede-pmake-insert-variable-shared "LOADDIRS"
364 (insert (mapconcat 'identity 364 (insert (mapconcat #'identity
365 (or (oref this autoload-dirs) '(".")) 365 (or (oref this autoload-dirs) '("."))
366 " "))) 366 " ")))
367 ) 367 )
368 368
369(cl-defmethod project-compile-target ((obj ede-proj-target-elisp-autoloads)) 369(cl-defmethod project-compile-target ((obj ede-proj-target-elisp-autoloads))
370 "Create or update the autoload target." 370 "Create or update the autoload target."
371 (require 'cedet-autogen) 371 (require 'cedet-autogen) ;FIXME: We don't have this file!
372 (declare-function cedet-update-autoloads "cedet-autogen")
372 (let ((default-directory (ede-expand-filename obj "."))) 373 (let ((default-directory (ede-expand-filename obj ".")))
373 (apply 'cedet-update-autoloads 374 (apply #'cedet-update-autoloads
374 (oref obj autoload-file) 375 (oref obj autoload-file)
375 (oref obj autoload-dirs)) 376 (oref obj autoload-dirs))
376 )) 377 ))
377 378
378(cl-defmethod ede-update-version-in-source ((this ede-proj-target-elisp-autoloads) version) 379(cl-defmethod ede-update-version-in-source ((_this ede-proj-target-elisp-autoloads) _version)
379 "In a Lisp file, updated a version string for THIS to VERSION. 380 "In a Lisp file, updated a version string for THIS to VERSION.
380There are standards in Elisp files specifying how the version string 381There are standards in Elisp files specifying how the version string
381is found, such as a `-version' variable, or the standard header." 382is found, such as a `-version' variable, or the standard header."
@@ -397,11 +398,11 @@ Argument THIS is the target which needs to insert an info file."
397 (insert " " (oref this autoload-file)) 398 (insert " " (oref this autoload-file))
398 ) 399 )
399 400
400(cl-defmethod ede-proj-tweak-autoconf ((this ede-proj-target-elisp-autoloads)) 401(cl-defmethod ede-proj-tweak-autoconf ((_this ede-proj-target-elisp-autoloads))
401 "Tweak the configure file (current buffer) to accommodate THIS." 402 "Tweak the configure file (current buffer) to accommodate THIS."
402 (error "Autoloads not supported in autoconf yet")) 403 (error "Autoloads not supported in autoconf yet"))
403 404
404(cl-defmethod ede-proj-flush-autoconf ((this ede-proj-target-elisp-autoloads)) 405(cl-defmethod ede-proj-flush-autoconf ((_this ede-proj-target-elisp-autoloads))
405 "Flush the configure file (current buffer) to accommodate THIS." 406 "Flush the configure file (current buffer) to accommodate THIS."
406 nil) 407 nil)
407 408
diff --git a/lisp/cedet/ede/proj-info.el b/lisp/cedet/ede/proj-info.el
index 3d437016e93..11e0f302e2b 100644
--- a/lisp/cedet/ede/proj-info.el
+++ b/lisp/cedet/ede/proj-info.el
@@ -1,4 +1,4 @@
1;;; ede-proj-info.el --- EDE Generic Project texinfo support 1;;; ede-proj-info.el --- EDE Generic Project texinfo support -*- lexical-binding: t; -*-
2 2
3;;; Copyright (C) 1998-2001, 2004, 2007-2021 Free Software Foundation, 3;;; Copyright (C) 1998-2001, 2004, 2007-2021 Free Software Foundation,
4;;; Inc. 4;;; Inc.
@@ -70,7 +70,7 @@ All other sources should be included independently."))
70;;; Makefile generation 70;;; Makefile generation
71;; 71;;
72(cl-defmethod ede-proj-configure-add-missing 72(cl-defmethod ede-proj-configure-add-missing
73 ((this ede-proj-target-makefile-info)) 73 ((_this ede-proj-target-makefile-info))
74 "Query if any files needed by THIS provided by automake are missing. 74 "Query if any files needed by THIS provided by automake are missing.
75Results in --add-missing being passed to automake." 75Results in --add-missing being passed to automake."
76 (not (ede-expand-filename (ede-toplevel) "texinfo.tex"))) 76 (not (ede-expand-filename (ede-toplevel) "texinfo.tex")))
@@ -97,7 +97,7 @@ when working in Automake mode."
97 (insert menu)) 97 (insert menu))
98 ;; Now insert the rest of the source elsewhere 98 ;; Now insert the rest of the source elsewhere
99 (ede-pmake-insert-variable-shared sv 99 (ede-pmake-insert-variable-shared sv
100 (insert (mapconcat 'identity src " "))) 100 (insert (mapconcat #'identity src " ")))
101 (if moresource 101 (if moresource
102 (error "Texinfo files should not have moresource"))))) 102 (error "Texinfo files should not have moresource")))))
103 103
diff --git a/lisp/cedet/ede/proj-obj.el b/lisp/cedet/ede/proj-obj.el
index 3aa4497f932..72d09167ab8 100644
--- a/lisp/cedet/ede/proj-obj.el
+++ b/lisp/cedet/ede/proj-obj.el
@@ -1,4 +1,4 @@
1;;; ede/proj-obj.el --- EDE Generic Project Object code generation support 1;;; ede/proj-obj.el --- EDE Generic Project Object code generation support -*- lexical-binding: t; -*-
2 2
3;;; Copyright (C) 1998-2000, 2005, 2008-2021 Free Software Foundation, 3;;; Copyright (C) 1998-2000, 2005, 2008-2021 Free Software Foundation,
4;;; Inc. 4;;; Inc.
@@ -282,15 +282,15 @@ Argument THIS is the target to get sources from."
282 (append (oref this source) (oref this auxsource))) 282 (append (oref this source) (oref this auxsource)))
283 283
284(cl-defmethod ede-proj-makefile-insert-variables ((this ede-proj-target-makefile-objectcode) 284(cl-defmethod ede-proj-makefile-insert-variables ((this ede-proj-target-makefile-objectcode)
285 &optional moresource) 285 &optional _moresource)
286 "Insert variables needed by target THIS. 286 "Insert variables needed by target THIS.
287Optional argument MORESOURCE is not used." 287Optional argument MORESOURCE is not used."
288 (let ((ede-proj-objectcode-dodependencies 288 (let ((ede-proj-objectcode-dodependencies
289 (oref (ede-target-parent this) automatic-dependencies))) 289 (oref (ede-target-parent this) automatic-dependencies)))
290 (cl-call-next-method))) 290 (cl-call-next-method)))
291 291
292(cl-defmethod ede-buffer-header-file((this ede-proj-target-makefile-objectcode) 292(cl-defmethod ede-buffer-header-file ((this ede-proj-target-makefile-objectcode)
293 buffer) 293 _buffer)
294 "There are no default header files." 294 "There are no default header files."
295 (or (cl-call-next-method) 295 (or (cl-call-next-method)
296 ;; Ok, nothing obvious. Try looking in ourselves. 296 ;; Ok, nothing obvious. Try looking in ourselves.
diff --git a/lisp/cedet/ede/proj-prog.el b/lisp/cedet/ede/proj-prog.el
index 3817cd7d40e..87b2ff7a551 100644
--- a/lisp/cedet/ede/proj-prog.el
+++ b/lisp/cedet/ede/proj-prog.el
@@ -1,4 +1,4 @@
1;;; ede-proj-prog.el --- EDE Generic Project program support 1;;; ede-proj-prog.el --- EDE Generic Project program support -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 1998-2001, 2005, 2008-2021 Free Software Foundation, 3;; Copyright (C) 1998-2001, 2005, 2008-2021 Free Software Foundation,
4;; Inc. 4;; Inc.
@@ -90,11 +90,11 @@ Note: Currently only used for Automake projects."
90(cl-defmethod ede-proj-makefile-insert-variables ((this ede-proj-target-makefile-program)) 90(cl-defmethod ede-proj-makefile-insert-variables ((this ede-proj-target-makefile-program))
91 "Insert variables needed by the compiler THIS." 91 "Insert variables needed by the compiler THIS."
92 (cl-call-next-method) 92 (cl-call-next-method)
93 (let ((lf (mapconcat 'identity (oref this ldflags) " "))) 93 (let ((lf (mapconcat #'identity (oref this ldflags) " ")))
94 (with-slots (ldlibs) this 94 (with-slots (ldlibs) this
95 (if ldlibs 95 (if ldlibs
96 (setq lf 96 (setq lf
97 (concat lf " -l" (mapconcat 'identity ldlibs " -l"))))) 97 (concat lf " -l" (mapconcat #'identity ldlibs " -l")))))
98 ;; LDFLAGS as needed. 98 ;; LDFLAGS as needed.
99 (when (and lf (not (string= "" lf))) 99 (when (and lf (not (string= "" lf)))
100 (ede-pmake-insert-variable-once "LDDEPS" (insert lf))))) 100 (ede-pmake-insert-variable-once "LDDEPS" (insert lf)))))
diff --git a/lisp/cedet/ede/proj-shared.el b/lisp/cedet/ede/proj-shared.el
index 130d7b897aa..8688d15174f 100644
--- a/lisp/cedet/ede/proj-shared.el
+++ b/lisp/cedet/ede/proj-shared.el
@@ -1,4 +1,4 @@
1;;; ede-proj-shared.el --- EDE Generic Project shared library support 1;;; ede-proj-shared.el --- EDE Generic Project shared library support -*- lexical-binding: t; -*-
2 2
3;;; Copyright (C) 1998-2000, 2009-2021 Free Software Foundation, Inc. 3;;; Copyright (C) 1998-2000, 2009-2021 Free Software Foundation, Inc.
4 4
@@ -170,7 +170,7 @@ Use ldlibs to add addition libraries.")
170 ) 170 )
171 171
172(cl-defmethod ede-proj-configure-add-missing 172(cl-defmethod ede-proj-configure-add-missing
173 ((this ede-proj-target-makefile-shared-object)) 173 ((_this ede-proj-target-makefile-shared-object))
174 "Query if any files needed by THIS provided by automake are missing. 174 "Query if any files needed by THIS provided by automake are missing.
175Results in --add-missing being passed to automake." 175Results in --add-missing being passed to automake."
176 (not (and (ede-expand-filename (ede-toplevel) "ltconfig") 176 (not (and (ede-expand-filename (ede-toplevel) "ltconfig")
@@ -185,7 +185,7 @@ Makefile.am generator, so use it to add this important bin program."
185 (insert (concat "lib" (ede-name this) ".la")))) 185 (insert (concat "lib" (ede-name this) ".la"))))
186 186
187(cl-defmethod ede-proj-makefile-insert-automake-post-variables 187(cl-defmethod ede-proj-makefile-insert-automake-post-variables
188 ((this ede-proj-target-makefile-shared-object)) 188 ((_this ede-proj-target-makefile-shared-object))
189 "Insert bin_PROGRAMS variables needed by target THIS. 189 "Insert bin_PROGRAMS variables needed by target THIS.
190We need to override -program which has an LDADD element." 190We need to override -program which has an LDADD element."
191 nil) 191 nil)
diff --git a/lisp/cedet/ede/proj.el b/lisp/cedet/ede/proj.el
index 4af8b4104f5..6ff763016ef 100644
--- a/lisp/cedet/ede/proj.el
+++ b/lisp/cedet/ede/proj.el
@@ -1,4 +1,4 @@
1;;; ede/proj.el --- EDE Generic Project file driver 1;;; ede/proj.el --- EDE Generic Project file driver -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 1998-2003, 2007-2021 Free Software Foundation, Inc. 3;; Copyright (C) 1998-2003, 2007-2021 Free Software Foundation, Inc.
4 4
@@ -339,7 +339,7 @@ Argument PROJ is the project to save."
339 (cl-call-next-method) 339 (cl-call-next-method)
340 (ede-proj-save proj)) 340 (ede-proj-save proj))
341 341
342(cl-defmethod eieio-done-customizing ((target ede-proj-target)) 342(cl-defmethod eieio-done-customizing ((_target ede-proj-target))
343 "Call this when a user finishes customizing this object. 343 "Call this when a user finishes customizing this object.
344Argument TARGET is the project we are completing customization on." 344Argument TARGET is the project we are completing customization on."
345 (cl-call-next-method) 345 (cl-call-next-method)
@@ -462,7 +462,7 @@ FILE must be massaged by `ede-convert-path'."
462 (object-remove-from-list target 'auxsource (ede-convert-path target file)) 462 (object-remove-from-list target 'auxsource (ede-convert-path target file))
463 (ede-proj-save)) 463 (ede-proj-save))
464 464
465(cl-defmethod project-update-version ((this ede-proj-project)) 465(cl-defmethod project-update-version ((_this ede-proj-project))
466 "The :version of project THIS has changed." 466 "The :version of project THIS has changed."
467 (ede-proj-save)) 467 (ede-proj-save))
468 468
@@ -486,7 +486,7 @@ FILE must be massaged by `ede-convert-path'."
486 (concat (oref this name) "-" (oref this version) ".tar.gz") 486 (concat (oref this name) "-" (oref this version) ".tar.gz")
487 )) 487 ))
488 488
489(cl-defmethod project-compile-project ((proj ede-proj-project) &optional command) 489(cl-defmethod project-compile-project ((proj ede-proj-project) &optional _command)
490 "Compile the entire current project PROJ. 490 "Compile the entire current project PROJ.
491Argument COMMAND is the command to use when compiling." 491Argument COMMAND is the command to use when compiling."
492 (let ((pm (ede-proj-dist-makefile proj)) 492 (let ((pm (ede-proj-dist-makefile proj))
@@ -499,13 +499,13 @@ Argument COMMAND is the command to use when compiling."
499 499
500;;; Target type specific compilations/debug 500;;; Target type specific compilations/debug
501;; 501;;
502(cl-defmethod project-compile-target ((obj ede-proj-target) &optional command) 502(cl-defmethod project-compile-target ((_obj ede-proj-target) &optional command)
503 "Compile the current target OBJ. 503 "Compile the current target OBJ.
504Argument COMMAND is the command to use for compiling the target." 504Argument COMMAND is the command to use for compiling the target."
505 (project-compile-project (ede-current-project) command)) 505 (project-compile-project (ede-current-project) command))
506 506
507(cl-defmethod project-compile-target ((obj ede-proj-target-makefile) 507(cl-defmethod project-compile-target ((obj ede-proj-target-makefile)
508 &optional command) 508 &optional _command)
509 "Compile the current target program OBJ. 509 "Compile the current target program OBJ.
510Optional argument COMMAND is the s the alternate command to use." 510Optional argument COMMAND is the s the alternate command to use."
511 (ede-proj-setup-buildenvironment (ede-current-project)) 511 (ede-proj-setup-buildenvironment (ede-current-project))
@@ -545,11 +545,11 @@ Converts all symbols into the objects to be used."
545 (if comp 545 (if comp
546 ;; Now that we have a pre-set compilers to use, convert tye symbols 546 ;; Now that we have a pre-set compilers to use, convert tye symbols
547 ;; into objects for ease of use 547 ;; into objects for ease of use
548 (if (listp comp) 548 (setq comp (if (listp comp)
549 (setq comp (mapcar 'symbol-value comp)) 549 (mapcar #'symbol-value comp)
550 (setq comp (list (symbol-value comp)))) 550 (list (symbol-value comp))))
551 (let* ((acomp (oref obj availablecompilers)) 551 (let* ((acomp (oref obj availablecompilers))
552 (avail (mapcar 'symbol-value acomp)) 552 (avail (mapcar #'symbol-value acomp))
553 (st (oref obj sourcetype)) 553 (st (oref obj sourcetype))
554 (sources (oref obj source))) 554 (sources (oref obj source)))
555 ;; COMP is not specified, so generate a list from the available 555 ;; COMP is not specified, so generate a list from the available
@@ -585,7 +585,7 @@ Converts all symbols into the objects to be used."
585 (setq link (list (symbol-value link))) 585 (setq link (list (symbol-value link)))
586 (error ":linker is not a symbol. Howd you do that?")) 586 (error ":linker is not a symbol. Howd you do that?"))
587 (let* ((alink (oref obj availablelinkers)) 587 (let* ((alink (oref obj availablelinkers))
588 (avail (mapcar 'symbol-value alink)) 588 (avail (mapcar #'symbol-value alink))
589 (st (oref obj sourcetype)) 589 (st (oref obj sourcetype))
590 (sources (oref obj source))) 590 (sources (oref obj source)))
591 ;; LINKER is not specified, so generate a list from the available 591 ;; LINKER is not specified, so generate a list from the available
diff --git a/lisp/cedet/ede/shell.el b/lisp/cedet/ede/shell.el
index ba36fccd0ba..371b04f9d29 100644
--- a/lisp/cedet/ede/shell.el
+++ b/lisp/cedet/ede/shell.el
@@ -1,4 +1,4 @@
1;;; ede/shell.el --- A shell controlled by EDE. 1;;; ede/shell.el --- A shell controlled by EDE. -*- lexical-binding: t; -*-
2;; 2;;
3;; Copyright (C) 2009-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2009-2021 Free Software Foundation, Inc.
4;; 4;;
diff --git a/lisp/cedet/ede/simple.el b/lisp/cedet/ede/simple.el
index ea6162ef94f..aaeb3f713c9 100644
--- a/lisp/cedet/ede/simple.el
+++ b/lisp/cedet/ede/simple.el
@@ -1,4 +1,4 @@
1;;; ede/simple.el --- Overlay an EDE structure on an existing project 1;;; ede/simple.el --- Overlay an EDE structure on an existing project -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2007-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2007-2021 Free Software Foundation, Inc.
4 4
@@ -78,7 +78,7 @@ The directory has three parts:
78 ede-simple-save-file-name) 78 ede-simple-save-file-name)
79 )) 79 ))
80 80
81(defun ede-simple-load (dir &optional rootproj) 81(defun ede-simple-load (dir &optional _rootproj)
82 "Load a project of type `Simple' for the directory DIR. 82 "Load a project of type `Simple' for the directory DIR.
83Return nil if there isn't one. 83Return nil if there isn't one.
84ROOTPROJ is nil, since we will only create a single EDE project here." 84ROOTPROJ is nil, since we will only create a single EDE project here."
@@ -112,7 +112,7 @@ Each directory needs a project file to control it.")
112 (eieio-persistent-save proj)) 112 (eieio-persistent-save proj))
113 113
114(cl-defmethod ede-find-subproject-for-directory ((proj ede-simple-project) 114(cl-defmethod ede-find-subproject-for-directory ((proj ede-simple-project)
115 dir) 115 _dir)
116 "Return PROJ, for handling all subdirs below DIR." 116 "Return PROJ, for handling all subdirs below DIR."
117 proj) 117 proj)
118 118
diff --git a/lisp/cedet/ede/source.el b/lisp/cedet/ede/source.el
index abdb07f2d73..5dbad4fcc00 100644
--- a/lisp/cedet/ede/source.el
+++ b/lisp/cedet/ede/source.el
@@ -1,4 +1,4 @@
1;; ede/source.el --- EDE source code object 1;; ede/source.el --- EDE source code object -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2000, 2008-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2000, 2008-2021 Free Software Foundation, Inc.
4 4
@@ -72,7 +72,7 @@ that they are willing to use.")
72 72
73;;; Methods 73;;; Methods
74;; 74;;
75(cl-defmethod initialize-instance :after ((this ede-sourcecode) &rest fields) 75(cl-defmethod initialize-instance :after ((this ede-sourcecode) &rest _fields)
76 "Make sure that all ede compiler objects are cached in 76 "Make sure that all ede compiler objects are cached in
77`ede-compiler-list'." 77`ede-compiler-list'."
78 (let ((lst ede-sourcecode-list)) 78 (let ((lst ede-sourcecode-list))
diff --git a/lisp/cedet/ede/speedbar.el b/lisp/cedet/ede/speedbar.el
index 48c4a89c440..01d4f943df5 100644
--- a/lisp/cedet/ede/speedbar.el
+++ b/lisp/cedet/ede/speedbar.el
@@ -1,4 +1,4 @@
1;;; ede/speedbar.el --- Speedbar viewing of EDE projects 1;;; ede/speedbar.el --- Speedbar viewing of EDE projects -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 1998-2001, 2003, 2005, 2007-2021 Free Software 3;; Copyright (C) 1998-2001, 2003, 2005, 2007-2021 Free Software
4;; Foundation, Inc. 4;; Foundation, Inc.
@@ -42,21 +42,21 @@
42 (setq ede-speedbar-key-map (speedbar-make-specialized-keymap)) 42 (setq ede-speedbar-key-map (speedbar-make-specialized-keymap))
43 43
44 ;; General viewing things 44 ;; General viewing things
45 (define-key ede-speedbar-key-map "\C-m" 'speedbar-edit-line) 45 (define-key ede-speedbar-key-map "\C-m" #'speedbar-edit-line)
46 (define-key ede-speedbar-key-map "+" 'speedbar-expand-line) 46 (define-key ede-speedbar-key-map "+" #'speedbar-expand-line)
47 (define-key ede-speedbar-key-map "=" 'speedbar-expand-line) 47 (define-key ede-speedbar-key-map "=" #'speedbar-expand-line)
48 (define-key ede-speedbar-key-map "-" 'speedbar-contract-line) 48 (define-key ede-speedbar-key-map "-" #'speedbar-contract-line)
49 (define-key ede-speedbar-key-map " " 'speedbar-toggle-line-expansion) 49 (define-key ede-speedbar-key-map " " #'speedbar-toggle-line-expansion)
50 50
51 ;; Some object based things 51 ;; Some object based things
52 (define-key ede-speedbar-key-map "C" 'eieio-speedbar-customize-line) 52 (define-key ede-speedbar-key-map "C" #'eieio-speedbar-customize-line)
53 53
54 ;; Some project based things 54 ;; Some project based things
55 (define-key ede-speedbar-key-map "R" 'ede-speedbar-remove-file-from-target) 55 (define-key ede-speedbar-key-map "R" #'ede-speedbar-remove-file-from-target)
56 (define-key ede-speedbar-key-map "b" 'ede-speedbar-compile-line) 56 (define-key ede-speedbar-key-map "b" #'ede-speedbar-compile-line)
57 (define-key ede-speedbar-key-map "B" 'ede-speedbar-compile-project) 57 (define-key ede-speedbar-key-map "B" #'ede-speedbar-compile-project)
58 (define-key ede-speedbar-key-map "D" 'ede-speedbar-make-distribution) 58 (define-key ede-speedbar-key-map "D" #'ede-speedbar-make-distribution)
59 (define-key ede-speedbar-key-map "E" 'ede-speedbar-edit-projectfile) 59 (define-key ede-speedbar-key-map "E" #'ede-speedbar-edit-projectfile)
60 ) 60 )
61 61
62(defvar ede-speedbar-menu 62(defvar ede-speedbar-menu
@@ -98,7 +98,7 @@
98 (speedbar-get-focus) 98 (speedbar-get-focus)
99 ) 99 )
100 100
101(defun ede-speedbar-toplevel-buttons (dir) 101(defun ede-speedbar-toplevel-buttons (_dir)
102 "Return a list of objects to display in speedbar. 102 "Return a list of objects to display in speedbar.
103Argument DIR is the directory from which to derive the list of objects." 103Argument DIR is the directory from which to derive the list of objects."
104 ede-projects 104 ede-projects
@@ -180,13 +180,13 @@ Argument DIR is the directory from which to derive the list of objects."
180 (setq depth (1- depth))) 180 (setq depth (1- depth)))
181 (speedbar-line-token)))) 181 (speedbar-line-token))))
182 182
183(cl-defmethod eieio-speedbar-derive-line-path ((obj ede-project) &optional depth) 183(cl-defmethod eieio-speedbar-derive-line-path ((obj ede-project) &optional _depth)
184 "Return the path to OBJ. 184 "Return the path to OBJ.
185Optional DEPTH is the depth we start at." 185Optional DEPTH is the depth we start at."
186 (file-name-directory (oref obj file)) 186 (file-name-directory (oref obj file))
187 ) 187 )
188 188
189(cl-defmethod eieio-speedbar-derive-line-path ((obj ede-target) &optional depth) 189(cl-defmethod eieio-speedbar-derive-line-path ((obj ede-target) &optional _depth)
190 "Return the path to OBJ. 190 "Return the path to OBJ.
191Optional DEPTH is the depth we start at." 191Optional DEPTH is the depth we start at."
192 (let ((proj (ede-target-parent obj))) 192 (let ((proj (ede-target-parent obj)))
@@ -208,7 +208,7 @@ Optional DEPTH is the depth we start at."
208 "Provide a speedbar description for OBJ." 208 "Provide a speedbar description for OBJ."
209 (ede-description obj)) 209 (ede-description obj))
210 210
211(cl-defmethod eieio-speedbar-child-description ((obj ede-target)) 211(cl-defmethod eieio-speedbar-child-description ((_obj ede-target))
212 "Provide a speedbar description for a plain-child of OBJ. 212 "Provide a speedbar description for a plain-child of OBJ.
213A plain child is a child element which is not an EIEIO object." 213A plain child is a child element which is not an EIEIO object."
214 (or (speedbar-item-info-file-helper) 214 (or (speedbar-item-info-file-helper)
@@ -251,7 +251,7 @@ It has depth DEPTH."
251 251
252;;; Generic file management for TARGETS 252;;; Generic file management for TARGETS
253;; 253;;
254(defun ede-file-find (text token indent) 254(defun ede-file-find (_text token indent)
255 "Find the file TEXT at path TOKEN. 255 "Find the file TEXT at path TOKEN.
256INDENT is the current indentation level." 256INDENT is the current indentation level."
257 (speedbar-find-file-in-frame 257 (speedbar-find-file-in-frame
@@ -290,7 +290,7 @@ level."
290 (t (error "Ooops... not sure what to do"))) 290 (t (error "Ooops... not sure what to do")))
291 (speedbar-center-buffer-smartly)) 291 (speedbar-center-buffer-smartly))
292 292
293(defun ede-tag-find (text token indent) 293(defun ede-tag-find (_text token _indent)
294 "For the tag TEXT in a file TOKEN, goto that position. 294 "For the tag TEXT in a file TOKEN, goto that position.
295INDENT is the current indentation level." 295INDENT is the current indentation level."
296 (let ((file (ede-find-nearest-file-line))) 296 (let ((file (ede-find-nearest-file-line)))
@@ -314,21 +314,21 @@ INDENT is the current indentation level."
314(defvar ede-speedbar-file-menu-additions 314(defvar ede-speedbar-file-menu-additions
315 '("----" 315 '("----"
316 ["Create EDE Target" ede-new-target (ede-current-project) ] 316 ["Create EDE Target" ede-new-target (ede-current-project) ]
317 ["Add to project" ede-speedbar-file-add-to-project (ede-current-project) ] 317 ;; ["Add to project" ede-speedbar-file-add-to-project (ede-current-project) ]
318 ["Compile project" ede-speedbar-compile-project (ede-current-project) ] 318 ["Compile project" ede-speedbar-compile-project (ede-current-project) ]
319 ["Compile file target" ede-speedbar-compile-file-target (ede-current-project) ] 319 ;; ["Compile file target" ede-speedbar-compile-file-target (ede-current-project) ]
320 ["Make distribution" ede-make-dist (ede-current-project) ] 320 ["Make distribution" ede-make-dist (ede-current-project) ]
321 ) 321 )
322 "Set of menu items to splice into the speedbar menu.") 322 "Set of menu items to splice into the speedbar menu.")
323 323
324(defvar ede-speedbar-file-keymap 324(defvar ede-speedbar-file-keymap
325 (let ((km (make-sparse-keymap))) 325 (let ((km (make-sparse-keymap)))
326 (define-key km "a" 'ede-speedbar-file-add-to-project) 326 ;; (define-key km "a" #'ede-speedbar-file-add-to-project)
327 (define-key km "t" 'ede-new-target) 327 (define-key km "t" #'ede-new-target)
328 (define-key km "s" 'ede-speedbar) 328 (define-key km "s" #'ede-speedbar)
329 (define-key km "C" 'ede-speedbar-compile-project) 329 (define-key km "C" #'ede-speedbar-compile-project)
330 (define-key km "c" 'ede-speedbar-compile-file-target) 330 ;; (define-key km "c" #'ede-speedbar-compile-file-target)
331 (define-key km "d" 'ede-make-dist) 331 (define-key km "d" #'ede-make-dist)
332 km) 332 km)
333 "Keymap spliced into the speedbar keymap.") 333 "Keymap spliced into the speedbar keymap.")
334 334
diff --git a/lisp/cedet/ede/util.el b/lisp/cedet/ede/util.el
index 80cbc211fc2..2b2402c6425 100644
--- a/lisp/cedet/ede/util.el
+++ b/lisp/cedet/ede/util.el
@@ -1,4 +1,4 @@
1;;; ede/util.el --- EDE utilities 1;;; ede/util.el --- EDE utilities -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 2000, 2005, 2009-2021 Free Software Foundation, Inc. 3;; Copyright (C) 2000, 2005, 2009-2021 Free Software Foundation, Inc.
4 4
diff --git a/lisp/cedet/mode-local.el b/lisp/cedet/mode-local.el
index 63e0cef61a3..4218b23c179 100644
--- a/lisp/cedet/mode-local.el
+++ b/lisp/cedet/mode-local.el
@@ -576,7 +576,7 @@ OVERARGS is a list of arguments passed to the override and
576(put :override-with-args 'lisp-indent-function 1) 576(put :override-with-args 'lisp-indent-function 1)
577 577
578(define-obsolete-function-alias 'define-overload 578(define-obsolete-function-alias 'define-overload
579 'define-overloadable-function "27.1") 579 #'define-overloadable-function "27.1")
580 580
581(define-obsolete-function-alias 'function-overload-p 581(define-obsolete-function-alias 'function-overload-p
582 #'mode-local--function-overload-p "27.1") 582 #'mode-local--function-overload-p "27.1")
diff --git a/lisp/cedet/pulse.el b/lisp/cedet/pulse.el
index 3257feb1fed..cfd2152162f 100644
--- a/lisp/cedet/pulse.el
+++ b/lisp/cedet/pulse.el
@@ -194,7 +194,7 @@ Optional argument FACE specifies the face to do the highlighting."
194 (progn 194 (progn
195 (overlay-put o 'face (or face 'pulse-highlight-start-face)) 195 (overlay-put o 'face (or face 'pulse-highlight-start-face))
196 (add-hook 'pre-command-hook 196 (add-hook 'pre-command-hook
197 'pulse-momentary-unhighlight)) 197 #'pulse-momentary-unhighlight))
198 ;; Pulse it. 198 ;; Pulse it.
199 (overlay-put o 'face 'pulse-highlight-face) 199 (overlay-put o 'face 'pulse-highlight-face)
200 ;; The pulse function puts FACE onto 'pulse-highlight-face. 200 ;; The pulse function puts FACE onto 'pulse-highlight-face.
@@ -233,7 +233,7 @@ Optional argument FACE specifies the face to do the highlighting."
233 (cancel-timer pulse-momentary-timer)) 233 (cancel-timer pulse-momentary-timer))
234 234
235 ;; Remove this hook. 235 ;; Remove this hook.
236 (remove-hook 'pre-command-hook 'pulse-momentary-unhighlight)) 236 (remove-hook 'pre-command-hook #'pulse-momentary-unhighlight))
237 237
238;;;###autoload 238;;;###autoload
239(defun pulse-momentary-highlight-one-line (point &optional face) 239(defun pulse-momentary-highlight-one-line (point &optional face)
diff --git a/lisp/cedet/semantic.el b/lisp/cedet/semantic.el
index 797ff753a6c..15388f08d66 100644
--- a/lisp/cedet/semantic.el
+++ b/lisp/cedet/semantic.el
@@ -1,4 +1,4 @@
1;;; semantic.el --- Semantic buffer evaluator. 1;;; semantic.el --- Semantic buffer evaluator. -*- lexical-binding: t; -*-
2 2
3;; Copyright (C) 1999-2021 Free Software Foundation, Inc. 3;; Copyright (C) 1999-2021 Free Software Foundation, Inc.
4 4
@@ -297,7 +297,7 @@ to use Semantic, and `semantic-init-hook' is run."
297 'semantic-inhibit-functions))) 297 'semantic-inhibit-functions)))
298 ;; Make sure that if this buffer is cloned, our tags and overlays 298 ;; Make sure that if this buffer is cloned, our tags and overlays
299 ;; don't go along for the ride. 299 ;; don't go along for the ride.
300 (add-hook 'clone-indirect-buffer-hook 'semantic-clear-toplevel-cache 300 (add-hook 'clone-indirect-buffer-hook #'semantic-clear-toplevel-cache
301 nil t) 301 nil t)
302 ;; Specify that this function has done its work. At this point 302 ;; Specify that this function has done its work. At this point
303 ;; we can consider that semantic is active in this buffer. 303 ;; we can consider that semantic is active in this buffer.
@@ -466,12 +466,12 @@ is requested."
466 ;; Nuke all semantic overlays. This is faster than deleting based 466 ;; Nuke all semantic overlays. This is faster than deleting based
467 ;; on our data structure. 467 ;; on our data structure.
468 (let ((l (overlay-lists))) 468 (let ((l (overlay-lists)))
469 (mapc 'semantic-delete-overlay-maybe (car l)) 469 (mapc #'semantic-delete-overlay-maybe (car l))
470 (mapc 'semantic-delete-overlay-maybe (cdr l)) 470 (mapc #'semantic-delete-overlay-maybe (cdr l))
471 ) 471 )
472 (semantic-parse-tree-set-needs-rebuild) 472 (semantic-parse-tree-set-needs-rebuild)
473 ;; Remove this hook which tracks if a buffer is up to date or not. 473 ;; Remove this hook which tracks if a buffer is up to date or not.
474 (remove-hook 'after-change-functions 'semantic-change-function t) 474 (remove-hook 'after-change-functions #'semantic-change-function t)
475 475
476 (run-hook-with-args 'semantic-after-toplevel-cache-change-hook 476 (run-hook-with-args 'semantic-after-toplevel-cache-change-hook
477 semantic--buffer-cache) 477 semantic--buffer-cache)
@@ -487,7 +487,7 @@ is requested."
487 ;; This is specific to the bovine parser. 487 ;; This is specific to the bovine parser.
488 (setq-local semantic-bovinate-nonterminal-check-obarray nil) 488 (setq-local semantic-bovinate-nonterminal-check-obarray nil)
489 (semantic-parse-tree-set-up-to-date) 489 (semantic-parse-tree-set-up-to-date)
490 (add-hook 'after-change-functions 'semantic-change-function nil t) 490 (add-hook 'after-change-functions #'semantic-change-function nil t)
491 (run-hook-with-args 'semantic-after-toplevel-cache-change-hook 491 (run-hook-with-args 'semantic-after-toplevel-cache-change-hook
492 semantic--buffer-cache) 492 semantic--buffer-cache)
493 (setq semantic--completion-cache nil) 493 (setq semantic--completion-cache nil)
@@ -779,25 +779,25 @@ Throw away all the old tags, and recreate the tag database."
779(defvar semantic-mode-map 779(defvar semantic-mode-map
780 (let ((map (make-sparse-keymap))) 780 (let ((map (make-sparse-keymap)))
781 ;; Key bindings: 781 ;; Key bindings:
782 ;; (define-key km "f" 'senator-search-set-tag-class-filter) 782 ;; (define-key km "f" #'senator-search-set-tag-class-filter)
783 ;; (define-key km "i" 'senator-isearch-toggle-semantic-mode) 783 ;; (define-key km "i" #'senator-isearch-toggle-semantic-mode)
784 (define-key map "\C-c,j" 'semantic-complete-jump-local) 784 (define-key map "\C-c,j" #'semantic-complete-jump-local)
785 (define-key map "\C-c,J" 'semantic-complete-jump) 785 (define-key map "\C-c,J" #'semantic-complete-jump)
786 (define-key map "\C-c,m" 'semantic-complete-jump-local-members) 786 (define-key map "\C-c,m" #'semantic-complete-jump-local-members)
787 (define-key map "\C-c,g" 'semantic-symref-symbol) 787 (define-key map "\C-c,g" #'semantic-symref-symbol)
788 (define-key map "\C-c,G" 'semantic-symref) 788 (define-key map "\C-c,G" #'semantic-symref)
789 (define-key map "\C-c,p" 'senator-previous-tag) 789 (define-key map "\C-c,p" #'senator-previous-tag)
790 (define-key map "\C-c,n" 'senator-next-tag) 790 (define-key map "\C-c,n" #'senator-next-tag)
791 (define-key map "\C-c,u" 'senator-go-to-up-reference) 791 (define-key map "\C-c,u" #'senator-go-to-up-reference)
792 (define-key map "\C-c, " 'semantic-complete-analyze-inline) 792 (define-key map "\C-c, " #'semantic-complete-analyze-inline)
793 (define-key map "\C-c,\C-w" 'senator-kill-tag) 793 (define-key map "\C-c,\C-w" #'senator-kill-tag)
794 (define-key map "\C-c,\M-w" 'senator-copy-tag) 794 (define-key map "\C-c,\M-w" #'senator-copy-tag)
795 (define-key map "\C-c,\C-y" 'senator-yank-tag) 795 (define-key map "\C-c,\C-y" #'senator-yank-tag)
796 (define-key map "\C-c,r" 'senator-copy-tag-to-register) 796 (define-key map "\C-c,r" #'senator-copy-tag-to-register)
797 (define-key map "\C-c,," 'semantic-force-refresh) 797 (define-key map "\C-c,," #'semantic-force-refresh)
798 (define-key map [?\C-c ?, up] 'senator-transpose-tags-up) 798 (define-key map [?\C-c ?, up] #'senator-transpose-tags-up)
799 (define-key map [?\C-c ?, down] 'senator-transpose-tags-down) 799 (define-key map [?\C-c ?, down] #'senator-transpose-tags-down)
800 (define-key map "\C-c,l" 'semantic-analyze-possible-completions) 800 (define-key map "\C-c,l" #'semantic-analyze-possible-completions)
801 ;; This hack avoids showing the CEDET menu twice if ede-minor-mode 801 ;; This hack avoids showing the CEDET menu twice if ede-minor-mode
802 ;; and Semantic are both enabled. Is there a better way? 802 ;; and Semantic are both enabled. Is there a better way?
803 (define-key map [menu-bar cedet-menu] 803 (define-key map [menu-bar cedet-menu]
@@ -1029,7 +1029,7 @@ Semantic mode.
1029 (file-exists-p semanticdb-default-system-save-directory)) 1029 (file-exists-p semanticdb-default-system-save-directory))
1030 (require 'semantic/db-ebrowse) 1030 (require 'semantic/db-ebrowse)
1031 (semanticdb-load-ebrowse-caches))) 1031 (semanticdb-load-ebrowse-caches)))
1032 (add-hook 'mode-local-init-hook 'semantic-new-buffer-fcn) 1032 (add-hook 'mode-local-init-hook #'semantic-new-buffer-fcn)
1033 ;; Add semantic-ia-complete-symbol to 1033 ;; Add semantic-ia-complete-symbol to
1034 ;; completion-at-point-functions, so that it is run from 1034 ;; completion-at-point-functions, so that it is run from
1035 ;; M-TAB. 1035 ;; M-TAB.
@@ -1037,11 +1037,11 @@ Semantic mode.
1037 ;; Note: The first entry added is the last entry run, so the 1037 ;; Note: The first entry added is the last entry run, so the
1038 ;; most specific entry should be last. 1038 ;; most specific entry should be last.
1039 (add-hook 'completion-at-point-functions 1039 (add-hook 'completion-at-point-functions
1040 'semantic-analyze-nolongprefix-completion-at-point-function) 1040 #'semantic-analyze-nolongprefix-completion-at-point-function)
1041 (add-hook 'completion-at-point-functions 1041 (add-hook 'completion-at-point-functions
1042 'semantic-analyze-notc-completion-at-point-function) 1042 #'semantic-analyze-notc-completion-at-point-function)
1043 (add-hook 'completion-at-point-functions 1043 (add-hook 'completion-at-point-functions
1044 'semantic-analyze-completion-at-point-function) 1044 #'semantic-analyze-completion-at-point-function)
1045 1045
1046 (if (bound-and-true-p global-ede-mode) 1046 (if (bound-and-true-p global-ede-mode)
1047 (define-key cedet-menu-map [cedet-menu-separator] '("--"))) 1047 (define-key cedet-menu-map [cedet-menu-separator] '("--")))
@@ -1052,21 +1052,21 @@ Semantic mode.
1052 ;; introduced in the buffer is pretty much futile, but we have to 1052 ;; introduced in the buffer is pretty much futile, but we have to
1053 ;; clean the hooks and delete Semantic-related overlays, so that 1053 ;; clean the hooks and delete Semantic-related overlays, so that
1054 ;; Semantic can be re-activated cleanly. 1054 ;; Semantic can be re-activated cleanly.
1055 (remove-hook 'mode-local-init-hook 'semantic-new-buffer-fcn) 1055 (remove-hook 'mode-local-init-hook #'semantic-new-buffer-fcn)
1056 (remove-hook 'completion-at-point-functions 1056 (remove-hook 'completion-at-point-functions
1057 'semantic-analyze-completion-at-point-function) 1057 #'semantic-analyze-completion-at-point-function)
1058 (remove-hook 'completion-at-point-functions 1058 (remove-hook 'completion-at-point-functions
1059 'semantic-analyze-notc-completion-at-point-function) 1059 #'semantic-analyze-notc-completion-at-point-function)
1060 (remove-hook 'completion-at-point-functions 1060 (remove-hook 'completion-at-point-functions
1061 'semantic-analyze-nolongprefix-completion-at-point-function) 1061 #'semantic-analyze-nolongprefix-completion-at-point-function)
1062 1062
1063 (remove-hook 'after-change-functions 1063 (remove-hook 'after-change-functions
1064 'semantic-change-function) 1064 #'semantic-change-function)
1065 (define-key cedet-menu-map [cedet-menu-separator] nil) 1065 (define-key cedet-menu-map [cedet-menu-separator] nil)
1066 (define-key cedet-menu-map [semantic-options-separator] nil) 1066 (define-key cedet-menu-map [semantic-options-separator] nil)
1067 ;; FIXME: handle semanticdb-load-ebrowse-caches 1067 ;; FIXME: handle semanticdb-load-ebrowse-caches
1068 (dolist (mode semantic-submode-list) 1068 (dolist (mode semantic-submode-list)
1069 (if (and (boundp mode) (eval mode)) 1069 (if (and (boundp mode) (symbol-value mode))
1070 (funcall mode -1))) 1070 (funcall mode -1)))
1071 ;; Unlink buffer and clear cache 1071 ;; Unlink buffer and clear cache
1072 (semantic--tag-unlink-cache-from-buffer) 1072 (semantic--tag-unlink-cache-from-buffer)