aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2003-07-05 00:36:30 +0000
committerStefan Monnier2003-07-05 00:36:30 +0000
commit4d5bb891d69482b5d2a5a6bc89263068a0bd3ce7 (patch)
tree33db83bd3c4e5559c416b07964989ebe3681251d
parent1360464e6200d301ffb3d6c5b76735748f6c8f06 (diff)
downloademacs-4d5bb891d69482b5d2a5a6bc89263068a0bd3ce7.tar.gz
emacs-4d5bb891d69482b5d2a5a6bc89263068a0bd3ce7.zip
*** empty log message ***
-rw-r--r--lisp/ChangeLog655
1 files changed, 319 insertions, 336 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 9e9a7fae240..aa12b55cf7a 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -6,6 +6,50 @@
6 6
72003-07-04 Stefan Monnier <monnier@cs.yale.edu> 72003-07-04 Stefan Monnier <monnier@cs.yale.edu>
8 8
9 * emacs-lisp/cl-macs.el (cl-transform-lambda): Strip &cl-defs
10 thingies from constructors created by defstruct.
11
12 * emacs-lisp/bytecomp.el (byte-compile-defvar): Check and set
13 the default value of the variable.
14 (byte-code-meter): Move declaration to top level.
15
16 * pcvs-parse.el (cvs-parse-status): Ignore extra fields from CVSNT.
17
18 * info.el (Info-following-node-name-re): New fun.
19 (Info-following-node-name): Remove.
20 (Info-insert-dir): Use the new fun.
21 (Info-extract-pointer): Don't save restriction; use new fun.
22 (Info-menu-entry-name-re): New const.
23 (Info-menu-entry-name-re): Use it along with new fun.
24 (Info-node-spec-re): Use new fun.
25 (Info-complete-menu-item, Info-fontify-node): Use new const.
26 (Info-goto-node, Info-follow-reference, Info-menu-update):
27 Use match-string.
28 (Info-follow-reference): Use assoc-string.
29 Use a list of strings for the completion table.
30 (Info-fontify-node): Use match-string, line-end-position.
31 Limit the search for `node:' to the first line.
32
33 * newcomment.el (uncomment-region): Remove padding coming from
34 comment-start rather than just from comment-padding.
35
36 * vc-cvs.el (vc-cvs-repository-hostname): New operation.
37 (vc-cvs-stay-local-p): Use vc-stay-local-p.
38 (vc-cvs-rename-file): Remove (use the default).
39 (vc-cvs-register): Register parent dir if needed.
40 (vc-cvs-could-register): Return non-nil if parent can be registered.
41 (vc-cvs-state, vc-cvs-dir-state, vc-cvs-print-log, vc-cvs-diff)
42 (vc-cvs-diff-tree, vc-cvs-make-version-backups-p): Use vc-stay-local-p.
43
44 * vc-svn.el (vc-svn-use-edit): Make it into a const.
45 (vc-svn-update): Fix the arguments to `svn'.
46 (vc-svn-diff-tree): Just use `vc-svn-diff'.
47 (vc-svn-create-snapshot, vc-svn-retrieve-snapshot):
48 Simple implementations, assuming `name' is a URL.
49
50 * progmodes/sh-script.el (sh-font-lock-paren): Add [ and ] to the
51 set of chars allowed unquoted in a case pattern.
52
9 * font-core.el (font-lock-defaults-alist): Remove obsolete entries. 53 * font-core.el (font-lock-defaults-alist): Remove obsolete entries.
10 54
11 * font-lock.el (font-lock-extra-types-widget) 55 * font-lock.el (font-lock-extra-types-widget)
@@ -31,7 +75,7 @@
31 75
322003-07-04 Martin Stjernholm <mast@lysator.liu.se> 762003-07-04 Martin Stjernholm <mast@lysator.liu.se>
33 77
34 * generic-x.el: Did away with the dependency on `c-emacs-features' 78 * generic-x.el: Do away with the dependency on `c-emacs-features'
35 when populating `rul-generic-mode-syntax-table'; we already know 79 when populating `rul-generic-mode-syntax-table'; we already know
36 this isn't XEmacs. 80 this isn't XEmacs.
37 81
@@ -39,14 +83,13 @@
39 83
40 * progmodes/cc-menus.el (cc-imenu-init): Do not set 84 * progmodes/cc-menus.el (cc-imenu-init): Do not set
41 `imenu-create-index-function' if the second argument is left 85 `imenu-create-index-function' if the second argument is left
42 out. This bug broke the imenu support in C, C++ and Java 86 out. This bug broke the imenu support in C, C++ and Java modes.
43 modes.
44 87
452003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 882003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
46 89
47 * progmodes/cc-engine.el, progmodes/cc-align.el 90 * progmodes/cc-engine.el, progmodes/cc-align.el
48 (c-add-stmt-syntax, c-lineup-arglist, 91 (c-add-stmt-syntax, c-lineup-arglist)
49 c-lineup-arglist-close-under-paren): Fixes to cope with 92 (c-lineup-arglist-close-under-paren): Fixes to cope with
50 special brace lists in Pike. 93 special brace lists in Pike.
51 94
522003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org> 952003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org>
@@ -59,7 +102,7 @@
59 102
602003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org> 1032003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org>
61 104
62 * progmodes/cc-awk.el, progmodes/cc-engine.el: Added code to 105 * progmodes/cc-awk.el, progmodes/cc-engine.el: Add code to
63 analyze AWK top-level forms properly (c-guess-basic-syntax 106 analyze AWK top-level forms properly (c-guess-basic-syntax
64 CASE 5P), c-awk-backward-syntactic-ws. 107 CASE 5P), c-awk-backward-syntactic-ws.
65 108
@@ -71,19 +114,18 @@
71 114
722003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 1152003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
73 116
74 * progmodes/cc-langs.el (c-paren-nontype-kwds): New language 117 * progmodes/cc-langs.el (c-paren-nontype-kwds): New language constant.
75 constant.
76 118
77 (c-other-decl-kwds, c-postfix-decl-spec-kwds): Added compiler 119 (c-other-decl-kwds, c-postfix-decl-spec-kwds): Add compiler
78 specific declspec keywords: __attribute__ for gcc and 120 specific declspec keywords: __attribute__ for gcc and
79 __declspec for msvc. 121 __declspec for msvc.
80 122
81 * progmodes/cc-fonts.el (c-font-lock-declarations, 123 * progmodes/cc-fonts.el (c-font-lock-declarations)
82 c-complex-decl-matchers): Support specifiers in a couple more 124 (c-complex-decl-matchers): Support specifiers in a couple more
83 contexts to cope with msvc '__declspec'. 125 contexts to cope with msvc '__declspec'.
84 126
85 * progmodes/cc-engine.el (c-forward-keyword-clause): Support 127 * progmodes/cc-engine.el (c-forward-keyword-clause):
86 `c-paren-nontype-kwds'. 128 Support `c-paren-nontype-kwds'.
87 129
882003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 1302003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
89 131
@@ -92,8 +134,8 @@
92 134
932003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 1352003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
94 136
95 * progmodes/cc-bytecomp.el (cc-bytecomp-setup-environment): Do 137 * progmodes/cc-bytecomp.el (cc-bytecomp-setup-environment):
96 not cover functions that have been bound. 138 Do not cover functions that have been bound.
97 139
98 (cc-external-require): New macro to use for requiring external 140 (cc-external-require): New macro to use for requiring external
99 packages, to handle the environment correctly. 141 packages, to handle the environment correctly.
@@ -104,14 +146,13 @@
104 146
1052003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 1472003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
106 148
107 * progmodes/cc-engine.el (c-beginning-of-member-init-list, 149 * progmodes/cc-engine.el (c-beginning-of-member-init-list)
108 c-guess-basic-syntax): Fixes in handling of bitfields. 150 (c-guess-basic-syntax): Fixes in handling of bitfields.
109 151
1102003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 1522003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
111 153
112 * progmodes/cc-langs.el (comment-end): Put a space in front of 154 * progmodes/cc-langs.el (comment-end): Put a space in front of
113 the comment ender in C, as it was before the move from 155 the comment ender in C, as it was before the move from cc-mode.el.
114 progmodes/cc-mode.el.
115 156
1162003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org> 1572003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org>
117 158
@@ -137,7 +178,7 @@
137 178
1382003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 1792003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
139 180
140 * progmodes/cc-mode.el (c-initialize-cc-mode): Added some 181 * progmodes/cc-mode.el (c-initialize-cc-mode): Add some
141 compatibility to make this function behave somewhat more as 182 compatibility to make this function behave somewhat more as
142 documented for derived modes. It's still not enough to make 183 documented for derived modes. It's still not enough to make
143 the old AWK mode behave reasonably, but it's been like this a 184 the old AWK mode behave reasonably, but it's been like this a
@@ -149,16 +190,15 @@
149 * progmodes/cc-fonts.el (c-remove-font-lock-face): New macro 190 * progmodes/cc-fonts.el (c-remove-font-lock-face): New macro
150 to remove a font lock face properly (especially in XEmacs). 191 to remove a font lock face properly (especially in XEmacs).
151 192
152 * progmodes/cc-bytecomp.el (cc-bytecomp-obsolete-fun): Added 193 * progmodes/cc-bytecomp.el (cc-bytecomp-obsolete-fun):
153 the same kludge as in `cc-bytecomp-obsolete-var' to avoid a 194 Add the same kludge as in `cc-bytecomp-obsolete-var' to avoid a
154 confused compiler warning. 195 confused compiler warning.
155 196
156 * progmodes/cc-engine.el (c-forward-type): Fixed a bug in the 197 * progmodes/cc-engine.el (c-forward-type): Fix a bug in the
157 handling of concatenated types when the component types are 198 handling of concatenated types when the component types are known.
158 known.
159 199
160 * progmodes/cc-fonts.el (c-constant-face-name): Added face name variable to 200 * progmodes/cc-fonts.el (c-constant-face-name): Add face name variable
161 avoid the use of `font-lock-constant-face' for constants in 201 to avoid the use of `font-lock-constant-face' for constants in
162 emacsen that doesn't have it. 202 emacsen that doesn't have it.
163 203
1642003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2042003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -169,18 +209,17 @@
169 209
1702003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2102003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
171 211
172 * progmodes/cc-mode.el (c-basic-common-init): Use 212 * progmodes/cc-mode.el (c-basic-common-init):
173 `open-paren-in-column-0-is-defun-start' if it exists and 213 Use `open-paren-in-column-0-is-defun-start' if it exists and works.
174 works.
175 214
176 * progmodes/cc-vars.el (c-emacs-features): Added `col-0-paren' 215 * progmodes/cc-vars.el (c-emacs-features): Add `col-0-paren'
177 to detect when `open-paren-in-column-0-is-defun-start' exists 216 to detect when `open-paren-in-column-0-is-defun-start' exists
178 and actually works. 217 and actually works.
179 218
1802003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2192003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
181 220
182 * progmodes/cc-align.el (c-lineup-argcont, 221 * progmodes/cc-align.el (c-lineup-argcont, c-lineup-gcc-asm-reg):
183 c-lineup-gcc-asm-reg): Don't quote nil in docstrings. 222 Don't quote nil in docstrings.
184 223
1852003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2242003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
186 225
@@ -191,7 +230,6 @@
191 the former a bit less hardcoded by putting it on 230 the former a bit less hardcoded by putting it on
192 `c-font-lock-extra-types' instead. There are also "bool" and 231 `c-font-lock-extra-types' instead. There are also "bool" and
193 "_Bool" that work the same way. 232 "_Bool" that work the same way.
194
195 (c-constant-kwds): "false" and "true" are standard constant 233 (c-constant-kwds): "false" and "true" are standard constant
196 macros in C99. 234 macros in C99.
197 235
@@ -202,8 +240,8 @@
202 progmodes/cc-cmds.el: Fixed various regexps to use POSIX char 240 progmodes/cc-cmds.el: Fixed various regexps to use POSIX char
203 classes when that is supported. 241 classes when that is supported.
204 242
205 * progmodes/cc-defs.el (c-alpha, c-alnum, c-digit, c-upper, 243 * progmodes/cc-defs.el (c-alpha, c-alnum, c-digit, c-upper, c-lower):
206 c-lower): New constants to make it easier to create regexps 244 New constants to make it easier to create regexps
207 that use POSIX char classes in emacsen that support them. 245 that use POSIX char classes in emacsen that support them.
208 246
2092003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2472003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -213,7 +251,7 @@
213 251
2142003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2522003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
215 253
216 * progmodes/cc-mode.el (c-after-change): Added kludge for bug 254 * progmodes/cc-mode.el (c-after-change): Add kludge for bug
217 where this function sometimes gets positions outside the 255 where this function sometimes gets positions outside the
218 buffer range. 256 buffer range.
219 257
@@ -222,24 +260,24 @@
222 * progmodes/cc-engine.el (c-beginning-of-member-init-list): 260 * progmodes/cc-engine.el (c-beginning-of-member-init-list):
223 Better handling of paretheses in unexpected places. 261 Better handling of paretheses in unexpected places.
224 262
225 * progmodes/cc-engine.el (c-forward-<>-arglist-recur): Fixed a 263 * progmodes/cc-engine.el (c-forward-<>-arglist-recur): Fix a
226 regexp match order problem that could cause empty template 264 regexp match order problem that could cause empty template
227 args on the form "<>" to be missed. 265 args on the form "<>" to be missed.
228 266
2292003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2672003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
230 268
231 * progmodes/cc-engine.el (c-parse-state): Added kludge to 269 * progmodes/cc-engine.el (c-parse-state): Add kludge to
232 avoid an infinite loop when Emacs' open-paren-in-column-zero 270 avoid an infinite loop when Emacs' open-paren-in-column-zero
233 rule kicks in and causes the sexp functions to misbehave. 271 rule kicks in and causes the sexp functions to misbehave.
234 272
2352003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2732003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
236 274
237 * progmodes/cc-engine.el (c-beginning-of-member-init-list): 275 * progmodes/cc-engine.el (c-beginning-of-member-init-list):
238 Fixed bug when C++-like code is encountered in non-C++ mode. 276 Fix bug when C++-like code is encountered in non-C++ mode.
239 277
2402003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2782003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
241 279
242 * progmodes/cc-defs.el (c-make-keywords-re): Added option to 280 * progmodes/cc-defs.el (c-make-keywords-re): Add option to
243 specify the language to look up `c-nonsymbol-key' in. 281 specify the language to look up `c-nonsymbol-key' in.
244 282
2452003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 2832003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -256,9 +294,9 @@
256 * progmodes/cc-langs.el (c-literal-start-regexp): Yet another 294 * progmodes/cc-langs.el (c-literal-start-regexp): Yet another
257 language variable. 295 language variable.
258 296
259 * progmodes/cc-fonts.el (c-font-lock-doc-comments, 297 * progmodes/cc-fonts.el (c-font-lock-doc-comments)
260 c-find-invalid-doc-markup, javadoc-font-lock-keywords): Fixed 298 (c-find-invalid-doc-markup, javadoc-font-lock-keywords):
261 fontification of the markup in Javadoc comments. 299 Fix fontification of the markup in Javadoc comments.
262 300
263 * progmodes/cc-engine.el: Fixes in face handling to cope with 301 * progmodes/cc-engine.el: Fixes in face handling to cope with
264 doc comments. 302 doc comments.
@@ -270,19 +308,18 @@
270 faces at positions easier. 308 faces at positions easier.
271 309
272 * progmodes/cc-defs.el (c-safe-scan-lists): New wrapper macro 310 * progmodes/cc-defs.el (c-safe-scan-lists): New wrapper macro
273 to avoid the warnings with too many args to `scan-lists' in 311 to avoid the warnings with too many args to `scan-lists' in Emacs.
274 Emacs.
275 312
2762003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3132003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
277 314
278 * progmodes/cc-engine.el (c-syntactic-skip-backward): New 315 * progmodes/cc-engine.el (c-syntactic-skip-backward):
279 function to make syntactic searches in the backward direction 316 New function to make syntactic searches in the backward direction
280 easier. 317 easier.
281 318
282 (c-beginning-of-statement-1): Optimized skipping over large paren 319 (c-beginning-of-statement-1): Optimize skipping over large paren
283 sexps somewhat. 320 sexps somewhat.
284 321
285 (c-safe-position): Removed the odd macro handling which was 322 (c-safe-position): Remove the odd macro handling which was
286 centered around the point instead of the passed position. 323 centered around the point instead of the passed position.
287 324
2882003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3252003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -290,9 +327,9 @@
290 * progmodes/cc-engine.el (c-in-knr-argdecl): Do not trip up on 327 * progmodes/cc-engine.el (c-in-knr-argdecl): Do not trip up on
291 initialization expressions. 328 initialization expressions.
292 329
293 * progmodes/cc-align.el (c-lineup-arglist, 330 * progmodes/cc-align.el (c-lineup-arglist)
294 c-lineup-close-paren, c-lineup-arglist-close-under-paren): 331 (c-lineup-close-paren, c-lineup-arglist-close-under-paren):
295 Tuned the "macro block" heuristics to work better in nested 332 Tune the "macro block" heuristics to work better in nested
296 arglist situations. 333 arglist situations.
297 334
2982003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3352003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -303,15 +340,15 @@
303 340
3042003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3412003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
305 342
306 * progmodes/cc-mode.el (c-basic-common-init): Install 343 * progmodes/cc-mode.el (c-basic-common-init):
307 `c-fill-paragraph' on `fill-paragraph-function'. Although 344 Install `c-fill-paragraph' on `fill-paragraph-function'.
308 it's not the normal way to call it in a CC Mode buffer it 345 Although it's not the normal way to call it in a CC Mode buffer it
309 makes a direct call to `fill-paragraph' work better. 346 makes a direct call to `fill-paragraph' work better.
310 347
3112003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3482003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
312 349
313 * progmodes/cc-vars.el, progmodes/cc-mode.el 350 * progmodes/cc-vars.el, progmodes/cc-mode.el
314 (c-require-final-newline): Made this variable an alist to 351 (c-require-final-newline): Make this variable an alist to
315 specify a value for each language. The default value causes 352 specify a value for each language. The default value causes
316 `require-final-newline' to be set to t only in languages where 353 `require-final-newline' to be set to t only in languages where
317 the standard requires a final newline. 354 the standard requires a final newline.
@@ -319,7 +356,7 @@
3192003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3562003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
320 357
321 * progmodes/cc-mode.el, progmodes/cc-vars.el 358 * progmodes/cc-mode.el, progmodes/cc-vars.el
322 (c-require-final-newline): Added a variable to make the 359 (c-require-final-newline): Add a variable to make the
323 initialization of `require-final-newline' more configurable. 360 initialization of `require-final-newline' more configurable.
324 361
325 * progmodes/cc-vars.el (c-mode-common-hook): Do not change the 362 * progmodes/cc-vars.el (c-mode-common-hook): Do not change the
@@ -328,8 +365,8 @@
328 365
3292003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3662003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
330 367
331 * progmodes/cc-fonts.el (javadoc-font-lock-keywords, 368 * progmodes/cc-fonts.el (javadoc-font-lock-keywords)
332 autodoc-font-lock-keywords): Support for Javadoc and Pike 369 (autodoc-font-lock-keywords): Support for Javadoc and Pike
333 Autodoc doc comments. 370 Autodoc doc comments.
334 371
335 * progmodes/cc-vars.el (c-doc-comment-style): New variable to 372 * progmodes/cc-vars.el (c-doc-comment-style): New variable to
@@ -345,69 +382,66 @@
345 382
3462003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3832003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
347 384
348 * progmodes/cc-cmds.el (c-guess-fill-prefix): Tuned the 385 * progmodes/cc-cmds.el (c-guess-fill-prefix): Tune the
349 heuristics of when to use `c-block-comment-prefix' for an 386 heuristics of when to use `c-block-comment-prefix' for an
350 unclosed block comment. 387 unclosed block comment.
351 388
3522003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3892003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
353 390
354 * progmodes/cc-engine.el, progmodes/cc-langs.el 391 * progmodes/cc-engine.el, progmodes/cc-langs.el
355 (c-nonsymbol-sexp-kwds, c-forward-keyword-clause): Handle 392 (c-nonsymbol-sexp-kwds, c-forward-keyword-clause):
356 keywords like "extern" that can be followed by e.g. a string 393 Handle keywords like "extern" that can be followed by e.g. a string
357 literal. 394 literal.
358 395
359 * progmodes/cc-defs.el (c-make-keywords-re): Make a regexp 396 * progmodes/cc-defs.el (c-make-keywords-re): Make a regexp
360 correctly with one submatch when adorn is set and the list is 397 correctly with one submatch when adorn is set and the list is empty.
361 empty.
362 398
3632003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 3992003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
364 400
365 * progmodes/cc-fonts.el (c-font-lock-declarations): Fixed a 401 * progmodes/cc-fonts.el (c-font-lock-declarations): Fix a
366 search that could go far past the relevant region and cause 402 search that could go far past the relevant region and cause
367 slowness. Do not limit the declaration detection to the 403 slowness. Do not limit the declaration detection to the
368 fontified region since that can cause misfontification in 404 fontified region since that can cause misfontification in
369 multiline declarations. 405 multiline declarations.
370 406
371 * progmodes/cc-engine.el (c-find-decl-spots): Added limit 407 * progmodes/cc-engine.el (c-find-decl-spots): Add limit
372 argument to handle declarations spanning the fontification 408 argument to handle declarations spanning the fontification
373 limit better. 409 limit better.
374 410
3752003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 4112003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
376 412
377 * progmodes/cc-engine.el (c-in-literal, c-literal-limits, 413 * progmodes/cc-engine.el (c-in-literal, c-literal-limits)
378 c-literal-limits-fast, c-beginning-of-inheritance-list): Use 414 (c-literal-limits-fast, c-beginning-of-inheritance-list):
379 the paren cache instead of the impaired ad hoc in 415 Use the paren cache instead of the impaired ad hoc in
380 `beginning-of-defun', so that these functions doesn't trip up 416 `beginning-of-defun', so that these functions doesn't trip up
381 on "{" in the first column inside strings or comments. 417 on "{" in the first column inside strings or comments.
382 418
3832003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 4192003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
384 420
385 * progmodes/cc-vars.el (c-hanging-braces-alist): Added 421 * progmodes/cc-vars.el (c-hanging-braces-alist):
386 `statement-cont' and made it auto newline free by default. 422 Add `statement-cont' and made it auto newline free by default.
387 423
388 * progmodes/cc-cmds.el (c-electric-brace): Added 424 * progmodes/cc-cmds.el (c-electric-brace):
389 `statement-cont' to the list of syntactic symbols to consider 425 Add `statement-cont' to the list of syntactic symbols to consider
390 for auto newlines since it can be used for in-statement brace 426 for auto newlines since it can be used for in-statement brace lists.
391 lists.
392 427
393 * progmodes/cc-vars.el (c-emacs-features): There's no need to 428 * progmodes/cc-vars.el (c-emacs-features): There's no need to
394 have this constant autoloaded. 429 have this constant autoloaded.
395 430
3962003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 4312003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
397 432
398 * progmodes/cc-fonts.el (c-font-lock-declarations): Use 433 * progmodes/cc-fonts.el (c-font-lock-declarations):
399 `c-recognize-typeless-decls' to avoid fontifying some macro 434 Use `c-recognize-typeless-decls' to avoid fontifying some macro
400 constructs as declarations in languages where a preceding type 435 constructs as declarations in languages where a preceding type
401 is mandatory. 436 is mandatory.
402 437
403 * progmodes/cc-langs.el (c-recognize-typeless-decls): New 438 * progmodes/cc-langs.el (c-recognize-typeless-decls):
404 language variable. 439 New language variable.
405 440
4062003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 4412003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
407 442
408 * progmodes/cc-align.el (c-lineup-close-paren): Use 443 * progmodes/cc-align.el (c-lineup-close-paren):
409 `c-syntactic-eol' when checking if the open paren ends its 444 Use `c-syntactic-eol' when checking if the open paren ends its line.
410 line.
411 445
412 * progmodes/cc-langs.el (c-syntactic-eol): Handle a line 446 * progmodes/cc-langs.el (c-syntactic-eol): Handle a line
413 continuation backslash. 447 continuation backslash.
@@ -431,42 +465,39 @@
431 465
4322003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 4662003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
433 467
434 * progmodes/cc-mode.el: Added autoload directives for the 468 * progmodes/cc-mode.el: Add autoload directives for the
435 interface functions in cc-langs. 469 interface functions in cc-langs.
436 470
4372003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 4712003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
438 472
439 * progmodes/cc-fonts.el (c-font-lock-declarations): Added a 473 * progmodes/cc-fonts.el (c-font-lock-declarations): Add a
440 property to handle refontication in multiline declaration 474 property to handle refontication in multiline declaration
441 arglists better. 475 arglists better.
442
443 (c-font-lock-<>-arglists): Fix to handle recursive template 476 (c-font-lock-<>-arglists): Fix to handle recursive template
444 arglists better. (As a side effect this will make 477 arglists better. (As a side effect this will make
445 fontification work better in older emacsen too.) 478 fontification work better in older emacsen too.)
446 479
447 * progmodes/cc-engine.el (c-forward-<>-arglist, 480 * progmodes/cc-engine.el (c-forward-<>-arglist)
448 c-remove-<>-arglist-properties): Use a common text property 481 (c-remove-<>-arglist-properties): Use a common text property
449 `c-type' for all sorts of CC Mode char classification, to 482 `c-type' for all sorts of CC Mode char classification, to
450 avoid cases when then same char is given conflicting types. 483 avoid cases when then same char is given conflicting types.
451
452 (c-forward-<>-arglist): New reparse argument to control that 484 (c-forward-<>-arglist): New reparse argument to control that
453 aspect explicitly. 485 aspect explicitly.
454
455 (c-forward-name, c-forward-type): Changes in the handling of 486 (c-forward-name, c-forward-type): Changes in the handling of
456 recursive template arglists. Fixes to cope with the new 'known 487 recursive template arglists. Fixes to cope with the new 'known
457 type classification. 488 type classification.
458 489
4592003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 4902003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
460 491
461 * progmodes/cc-mode.el (c-basic-common-init): Added the new 492 * progmodes/cc-mode.el (c-basic-common-init): Add the new
462 char property `c-type' to `text-property-default-nonsticky'. 493 char property `c-type' to `text-property-default-nonsticky'.
463 494
464 * progmodes/cc-defs.el (c-put-char-property, 495 * progmodes/cc-defs.el (c-put-char-property)
465 c-get-char-property, c-clear-char-property, 496 (c-get-char-property, c-clear-char-property)
466 c-clear-char-properties): Generalized `c-put-char-syntax' and 497 (c-clear-char-properties): Generalize `c-put-char-syntax' and
467 `c-get-char-syntax' to handle any property. 498 `c-get-char-syntax' to handle any property.
468 499
469 * progmodes/cc-bytecomp.el (cc-bytecomp-defun): Fixed bug that 500 * progmodes/cc-bytecomp.el (cc-bytecomp-defun): Fix bug that
470 caused existing function definitions to be overridden by 501 caused existing function definitions to be overridden by
471 phonies when the bytecomp environment is restored. 502 phonies when the bytecomp environment is restored.
472 503
@@ -474,10 +505,10 @@
474 505
475 * progmodes/cc-cmds.el (c-mask-paragraph): Masking is 506 * progmodes/cc-cmds.el (c-mask-paragraph): Masking is
476 necessary in normal code too to avoid getting a fill prefix 507 necessary in normal code too to avoid getting a fill prefix
477 from a nearby comment. Changed the name from `c-mask-comment' 508 from a nearby comment. Change the name from `c-mask-comment'
478 to a more accurate one. 509 to a more accurate one.
479 510
480 * progmodes/cc-defs.el, progmodes/cc-mode.el: Changed the 511 * progmodes/cc-defs.el, progmodes/cc-mode.el: Change the
481 auto-load-alist strategy to not add entries on package load, 512 auto-load-alist strategy to not add entries on package load,
482 to be defensive in the case that autoloads are updated in 513 to be defensive in the case that autoloads are updated in
483 older emacsen. The bug that would occur in that case would 514 older emacsen. The bug that would occur in that case would
@@ -485,27 +516,25 @@
485 516
4862003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 5172003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
487 518
488 * progmodes/cc-fonts.el (c-font-lock-declarations): Fine 519 * progmodes/cc-fonts.el (c-font-lock-declarations):
489 tuning of the decision tree that tells declarations from 520 Fine tuning of the decision tree that tells declarations from
490 expressions to produce better results in some ambiguous cases. 521 expressions to produce better results in some ambiguous cases.
491 522
492 * progmodes/cc-fonts.el (c-font-lock-syntactic-face-function): 523 * progmodes/cc-fonts.el (c-font-lock-syntactic-face-function):
493 Removed since it doesn't give the control we want. 524 Remove since it doesn't give the control we want.
494
495 (c-font-lock-invalid-string): Replacement for 525 (c-font-lock-invalid-string): Replacement for
496 `c-font-lock-syntactic-face-function' that puts the error face 526 `c-font-lock-syntactic-face-function' that puts the error face
497 on the string opener only, to avoid the annoying excessive use 527 on the string opener only, to avoid the annoying excessive use
498 of the error face while a string literal is being written. 528 of the error face while a string literal is being written.
499
500 (c-basic-matchers-before): Use `c-font-lock-invalid-string'. 529 (c-basic-matchers-before): Use `c-font-lock-invalid-string'.
501 530
502 * progmodes/cc-engine.el (c-string-syntax, 531 * progmodes/cc-engine.el (c-string-syntax)
503 c-string-limit-regexp): Added constants to use when handling 532 (c-string-limit-regexp): Add constants to use when handling
504 string limits, since not all old emacsen react well to the "|" 533 string limits, since not all old emacsen react well to the "|"
505 syntax class. 534 syntax class.
506 535
507 (c-literal-limits, c-literal-limits-fast, c-literal-type): Use 536 (c-literal-limits, c-literal-limits-fast, c-literal-type):
508 `c-string-syntax' and `c-string-limit-regexp'. Replaced some 537 Use `c-string-syntax' and `c-string-limit-regexp'. Replace some
509 hardcoded comment start regexps with `c-comment-start-regexp'. 538 hardcoded comment start regexps with `c-comment-start-regexp'.
510 539
5112003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 5402003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -518,88 +547,75 @@
518 * progmodes/cc-mode.el: Add the `auto-mode-alist' entries to 547 * progmodes/cc-mode.el: Add the `auto-mode-alist' entries to
519 the end instead of the start of the list, to avoid overriding 548 the end instead of the start of the list, to avoid overriding
520 user additions that are made before this file is loaded when 549 user additions that are made before this file is loaded when
521 the entries don't correspond to any already on 550 the entries don't correspond to any already on `auto-mode-alist'.
522 `auto-mode-alist'.
523
524 This is done through the third append argument to 551 This is done through the third append argument to
525 `auto-mode-alist'. That doesn't exist in older (X)Emacsen, so 552 `add-to-alist'. That doesn't exist in older (X)Emacsen, so
526 the function is adviced in cc-defs. However, that advice 553 the function is advised in cc-defs. However, that advice
527 doesn't help if the autoloads are updated in an old (X)Emacs 554 doesn't help if the autoloads are updated in an old (X)Emacs
528 with this version of CC Mode, but I believe it's unlikely that 555 with this version of CC Mode, but I believe it's unlikely that
529 anyone does that when CC Mode isn't distributed with with it. 556 anyone does that when CC Mode isn't distributed with with it.
530 557
531 * progmodes/cc-defs.el (add-to-list): Added advice to get the 558 * progmodes/cc-defs.el (add-to-list): Add advice to get the
532 optional third append argument in older (X)Emacsen. 559 optional third append argument in older (X)Emacsen.
533 560
534 * progmodes/cc-langs.el (c-keywords-obarray): Kludge for 561 * progmodes/cc-langs.el (c-keywords-obarray): Kludge for
535 strange bug in Emacs that gives so odd errors that I frankly 562 strange bug in Emacs that gives so odd errors that I frankly
536 don't even muster to begin trying to narrow it down. If 563 don't even muster to begin trying to narrow it down.
537 someone is so inclined, restore the commented code, byte 564 If someone is so inclined, restore the commented code, byte
538 compile, and try to open a C++ file or something in font lock 565 compile, and try to open a C++ file or something in font lock mode.
539 mode.
540 566
5412003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 5672003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
542 568
543 * progmodes/cc-langs.el: Updated the IDL support from the 569 * progmodes/cc-langs.el: Update the IDL support from the
544 specs. This also adds the keywords for the variants PSDL and 570 specs. This also adds the keywords for the variants PSDL and
545 CIDL. (This is mostly done from reading the grammars only; 571 CIDL. (This is mostly done from reading the grammars only;
546 very lightly tested.) 572 very lightly tested.)
547 573
548 * progmodes/cc-langs.el (c-type-list-kwds): Added "new" in 574 * progmodes/cc-langs.el (c-type-list-kwds): Add "new" in Java.
549 Java.
550 575
551 * progmodes/cc-fonts.el: Made sure that 576 * progmodes/cc-fonts.el: Make sure that
552 `parse-sexp-lookup-properties' is properly insulated from 577 `parse-sexp-lookup-properties' is properly insulated from
553 clobbering by the font-lock package at all relevant entry 578 clobbering by the font-lock package at all relevant entry points.
554 points.
555 579
5562003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 5802003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
557 581
558 * progmodes/cc-langs.el (c-opt-after-id-concat-key): New 582 * progmodes/cc-langs.el (c-opt-after-id-concat-key):
559 language constant to make the recognition of identifier 583 New language constant to make the recognition of identifier
560 qualifiers more flexible. Recognize the identifier before 584 qualifiers more flexible. Recognize the identifier before
561 ".*" as a qualifier in Java. 585 ".*" as a qualifier in Java.
562
563 (c-identifier-key): Recognize "::*" inside identifiers in C++. 586 (c-identifier-key): Recognize "::*" inside identifiers in C++.
564 Recognize identifiers ending with ".*" in Java for the sake of 587 Recognize identifiers ending with ".*" in Java for the sake of
565 import directives. 588 import directives.
566
567 (c-type-list-kwds, c-ref-list-kwds): Recognize "import" and 589 (c-type-list-kwds, c-ref-list-kwds): Recognize "import" and
568 "package" declarations in Java. 590 "package" declarations in Java.
569 591
570 * progmodes/cc-vars.el (c-doc-face, c-doc-marker-face, 592 * progmodes/cc-vars.el (c-doc-face, c-doc-marker-face)
571 c-doc-markup-face): Removed since they aren't used (and 593 (c-doc-markup-face): Remove since they aren't used (and
572 probably won't be). 594 probably won't be).
573 595
574 * progmodes/cc-langs.el (c-ref-list-kwds): New language 596 * progmodes/cc-langs.el (c-ref-list-kwds): New language
575 constant to specify keywords followed by references. 597 constant to specify keywords followed by references.
576
577 (c-last-identifier-range): New variable to avoid going back to 598 (c-last-identifier-range): New variable to avoid going back to
578 search for the identifier to font lock after a call to 599 search for the identifier to font lock after a call to
579 `c-forward-name'. 600 `c-forward-name'.
580 601 (c-type-prefix-kwds, c-type-list-kwds): Fix classification of
581 (c-type-prefix-kwds, c-type-list-kwds): Fixed classification of
582 "@interface" etc in Objective-C. 602 "@interface" etc in Objective-C.
583 603
584 * progmodes/cc-engine.el (c-forward-keyword-clause): Fixed 604 * progmodes/cc-engine.el (c-forward-keyword-clause):
585 handling of keyword prefixes in `c-type-list-kwds' and 605 Fix handling of keyword prefixes in `c-type-list-kwds' and
586 `c-colon-type-list-kwds' clauses. 606 `c-colon-type-list-kwds' clauses.
587
588 (c-keyword-sym, c-keyword-member): New functions to lookup and 607 (c-keyword-sym, c-keyword-member): New functions to lookup and
589 categorize keywords. 608 categorize keywords.
590
591 (c-forward-keyword-clause): New function to move over a keyword 609 (c-forward-keyword-clause): New function to move over a keyword
592 and its associated clause according to `c-<>-arglist-kwds' etc. 610 and its associated clause according to `c-<>-arglist-kwds' etc.
593 611
594 * progmodes/cc-langs.el (c-typeless-decl-kwds, 612 * progmodes/cc-langs.el (c-typeless-decl-kwds)
595 c-type-list-kwds, c-colon-type-list-kwds, 613 (c-type-list-kwds, c-colon-type-list-kwds)
596 c-colon-type-list-re, c-paren-type-kwds): New language 614 (c-colon-type-list-re, c-paren-type-kwds): New language
597 constants and variables to generalize the recognition of 615 constants and variables to generalize the recognition of
598 various language constructs. 616 various language constructs.
599 617 (c-keywords): Did away with the list of `*-kwds' constants.
600 (c-keywords): Did away with the list of `*-kwds' constants. It's 618 It's now built through macro expansion.
601 now built through macro expansion.
602
603 (c-keywords-obarray): New language variable which contains each 619 (c-keywords-obarray): New language variable which contains each
604 keyword as a symbol, to make fast reverse lookup of keywords to 620 keyword as a symbol, to make fast reverse lookup of keywords to
605 the `*-kwds' lists they come from. 621 the `*-kwds' lists they come from.
@@ -607,67 +623,63 @@
6072003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 6232003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
608 624
609 * progmodes/cc-defs.el (c-lang-defconst-eval-immediately): 625 * progmodes/cc-defs.el (c-lang-defconst-eval-immediately):
610 Added macro to be able to do direct evaluation in 626 Add macro to be able to do direct evaluation in
611 `c-lang-defconst' forms. 627 `c-lang-defconst' forms.
612 628
613 * progmodes/cc-engine.el (c-syntactic-re-search-forward): 629 * progmodes/cc-engine.el (c-syntactic-re-search-forward):
614 Fixed a bug which could cause the point to end up outside the 630 Fix a bug which could cause the point to end up outside the
615 containing sexp if PAREN-LEVEL was used. 631 containing sexp if PAREN-LEVEL was used.
616 632
617 * progmodes/cc-engine.el, progmodes/cc-fonts.el, 633 * progmodes/cc-engine.el, progmodes/cc-fonts.el,
618 progmodes/cc-langs.el: Generalized the C++ template arglist 634 progmodes/cc-langs.el: Generalize the C++ template arglist
619 support to handle angle bracket arglists in any language. 635 support to handle angle bracket arglists in any language.
620 636 (c-recognize-<>-arglists, c-<>-arglist-kwds)
621 (c-recognize-<>-arglists, c-<>-arglist-kwds, 637 (c-opt-<>-arglist-start): New language variables to control
622 c-opt-<>-arglist-start): New language variables to control
623 angle bracket arglists. 638 angle bracket arglists.
624
625 (c-opt-type-suffix-key): Use `c-recognize-<>-arglists' in 639 (c-opt-type-suffix-key): Use `c-recognize-<>-arglists' in
626 Objective-C instead of matching a protocol reference list as a 640 Objective-C instead of matching a protocol reference list as a
627 type suffix. 641 type suffix.
628 642
6292003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 6432003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
630 644
631 * progmodes/cc-align.el (c-gnu-impose-minimum): Fixed a missing 645 * progmodes/cc-align.el (c-gnu-impose-minimum): Fix a missing
632 `save-excursion' that caused the point to jump around. 646 `save-excursion' that caused the point to jump around.
633 647
6342003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 6482003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
635 649
636 * progmodes/cc-mode.el, progmodes/cc-menus.el (objc-mode, 650 * progmodes/cc-mode.el, progmodes/cc-menus.el (objc-mode)
637 cc-imenu-init): Fixed initialization bug that has made the 651 (cc-imenu-init): Fix initialization bug that has made the
638 Objective-C support inoperational since 5.26. 652 Objective-C support inoperational since 5.26.
639 653 (cc-imenu-objc-generic-expression): Update submatch indices
640 (cc-imenu-objc-generic-expression): Updated submatch indices
641 due to changes in `cc-imenu-c++-generic-expression'. 654 due to changes in `cc-imenu-c++-generic-expression'.
642
643 (cc-imenu-objc-function): Don't add an empty "C" menu since 655 (cc-imenu-objc-function): Don't add an empty "C" menu since
644 imenu doesn't like that. 656 imenu doesn't like that.
645 657
6462003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 6582003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
647 659
648 * progmodes/cc-align.el (c-lineup-arglist, 660 * progmodes/cc-align.el (c-lineup-arglist)
649 c-lineup-arglist-close-under-paren, c-lineup-close-paren): 661 (c-lineup-arglist-close-under-paren, c-lineup-close-paren):
650 Added DWIM to the functions that line up at or after the 662 Add DWIM to the functions that line up at or after the
651 arglist open paren to avoid that if there are brace blocks 663 arglist open paren to avoid that if there are brace blocks
652 inside, e.g. when a macro contains a code block. 664 inside, e.g. when a macro contains a code block.
653 665
6542003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 6662003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
655 667
656 * progmodes/cc-vars.el (objc-font-lock-extra-types): Changed 668 * progmodes/cc-vars.el (objc-font-lock-extra-types):
657 default to treat identifiers starting with capital letters as 669 Change default to treat identifiers starting with capital letters as
658 types, according to Objective-C naming conventions. The types 670 types, according to Objective-C naming conventions. The types
659 previously on the list is part of the language and therefore 671 previously on the list is part of the language and therefore
660 on `c-primitive-type-kwds' instead. 672 on `c-primitive-type-kwds' instead.
661 673
662 * progmodes/cc-fonts.el: Fixed font locking in Objective-C. 674 * progmodes/cc-fonts.el: Fix font locking in Objective-C.
663 Be more careful about returning nil from functions used 675 Be more careful about returning nil from functions used
664 directly as font-lock matchers. 676 directly as font-lock matchers.
665 677
666 * progmodes/cc-mode.el (c-font-lock-init): Made the syntax 678 * progmodes/cc-mode.el (c-font-lock-init): Make the syntax
667 table modification element of `font-lock-defaults' 679 table modification element of `font-lock-defaults'
668 parameterized over the languages. 680 parameterized over the languages.
669 681
670 * progmodes/cc-langs.el: Updated the Objective-C constants 682 * progmodes/cc-langs.el: Update the Objective-C constants
671 according to the language spec. The "@" chars that start 683 according to the language spec. The "@" chars that start
672 directives are now considered part of the keywords to make 684 directives are now considered part of the keywords to make
673 things easier. 685 things easier.
@@ -675,16 +687,15 @@
6752003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 6872003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
676 688
677 * progmodes/cc-defs.el: (c-(up|down)-list-(forward|backward)): 689 * progmodes/cc-defs.el: (c-(up|down)-list-(forward|backward)):
678 Made the position optional and added docstrings. 690 Make the position optional and added docstrings.
679 691
680 (c-go-(up|down)-list-(forward|backward)): Added variants of the 692 (c-go-(up|down)-list-(forward|backward)): Add variants of the
681 above that move point and return successfulness instead. 693 above that move point and return successfulness instead.
682 694
6832003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 6952003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
684 696
685 * progmodes/cc-fonts.el (c-font-lock-<>-arglists): New 697 * progmodes/cc-fonts.el (c-font-lock-<>-arglists):
686 function to fontify all occurrences of template arglists in 698 New function to fontify all occurrences of template arglists in C++.
687 C++.
688 699
689 * progmodes/cc-engine.el (c-disallow-comma-in-<>-arglists): 700 * progmodes/cc-engine.el (c-disallow-comma-in-<>-arglists):
690 New variable to be able to avoid false recognition of template 701 New variable to be able to avoid false recognition of template
@@ -694,38 +705,36 @@
694 705
695 * progmodes/cc-fonts.el, progmodes/cc-langs.el 706 * progmodes/cc-fonts.el, progmodes/cc-langs.el
696 (c-decl-prefix-re, c-font-lock-declarations): Match template 707 (c-decl-prefix-re, c-font-lock-declarations): Match template
697 open brackets to get a declaration in the first template 708 open brackets to get a declaration in the first template argument.
698 argument.
699
700 (c-complex-decl-matchers): Fontify the second type in a "class 709 (c-complex-decl-matchers): Fontify the second type in a "class
701 X = Y" expression in C++. 710 X = Y" expression in C++.
702 711
7032003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 7122003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
704 713
705 * progmodes/cc-engine.el (c-forward-<>-arglist): Broke out the 714 * progmodes/cc-engine.el (c-forward-<>-arglist): Break out the
706 recursive part to a new function to improve efficiency when a 715 recursive part to a new function to improve efficiency when a
707 nested template arglist search turns out to be futile. 716 nested template arglist search turns out to be futile.
708 717
7092003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 7182003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
710 719
711 * progmodes/cc-menus.el (cc-imenu-java-generic-expression): 720 * progmodes/cc-menus.el (cc-imenu-java-generic-expression):
712 Improved to avoid false matches on e.g. "else if (foo)". 721 Improve to avoid false matches on e.g. "else if (foo)".
713 722
7142003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 7232003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
715 724
716 * progmodes/cc-engine.el (c-forward-token-2, 725 * progmodes/cc-engine.el (c-forward-token-2)
717 c-backward-token-2): New functions that work like the -1 726 (c-backward-token-2): New functions that work like the -1
718 variants but that handles multicharacter operator tokens. 727 variants but that handle multicharacter operator tokens.
719 728
720 * progmodes/cc-engine.el (c-inside-bracelist-p, 729 * progmodes/cc-engine.el (c-inside-bracelist-p)
721 c-guess-basic-syntax): Did away with the hardcoded regexps to 730 (c-guess-basic-syntax): Do away with the hardcoded regexps to
722 recognize "typedef" declaration prefixes, "extern" and 731 recognize "typedef" declaration prefixes, "extern" and
723 "namespace" blocks, "enum"-style brace list declarations and 732 "namespace" blocks, "enum"-style brace list declarations and
724 Java-style array initializers with "new". 733 Java-style array initializers with "new".
725 734
726 * progmodes/cc-langs.el (c-brace-list-decl-kwds, 735 * progmodes/cc-langs.el (c-brace-list-decl-kwds)
727 c-brace-list-key, c-inexpr-brace-list-kwds, 736 (c-brace-list-key, c-inexpr-brace-list-kwds)
728 c-opt-inexpr-brace-list-key): New language constants and 737 (c-opt-inexpr-brace-list-key): New language constants and
729 variables to parameterize some more of the hardcoded regexps 738 variables to parameterize some more of the hardcoded regexps
730 in cc-engine. 739 in cc-engine.
731 740
@@ -748,75 +757,70 @@
748 initializes the language variables. It's necessary that the 757 initializes the language variables. It's necessary that the
749 caller does that directly since the evaluated values for them 758 caller does that directly since the evaluated values for them
750 now get compiled in directly. 759 now get compiled in directly.
751 760 (c-font-lock-init, c-common-init): Separate the font-lock
752 (c-font-lock-init, c-common-init): Separated the font-lock
753 initialization from `c-common-init'. 761 initialization from `c-common-init'.
754 762
755 * progmodes/cc-mode.el (c-define-abbrev-table): Do not 763 * progmodes/cc-mode.el (c-define-abbrev-table): Do not
756 override an existing abbrev table. 764 override an existing abbrev table.
757 765 (c-Java-defun-prompt-regexp): Move here from cc-langs since
758 (c-Java-defun-prompt-regexp): Moved here from cc-langs since
759 cc-langs isn't always loaded at runtime. 766 cc-langs isn't always loaded at runtime.
760 767
761 * progmodes/cc-langs.el (c-make-init-lang-vars-fun, 768 * progmodes/cc-langs.el (c-make-init-lang-vars-fun)
762 c-init-language-vars): Changed to allow language variable 769 (c-init-language-vars): Change to allow language variable
763 initialization from derived modes. 770 initialization from derived modes.
764
765 (c-mode-menu): New language variable for the mode menu. 771 (c-mode-menu): New language variable for the mode menu.
766 772 (c-make-mode-syntax-table, c-mode-syntax-table)
767 (c-make-mode-syntax-table, c-mode-syntax-table, 773 (make-c++-template-syntax-table): New language variables for syntax
768 make-c++-template-syntax-table): New language variables for syntax
769 tables. The code that initializes them has been moved to cc-mode 774 tables. The code that initializes them has been moved to cc-mode
770 to make it possible to avoid loading cc-langs at runtime. 775 to make it possible to avoid loading cc-langs at runtime.
771 776
772 * progmodes/cc-engine.el, progmodes/cc-langs.el 777 * progmodes/cc-engine.el, progmodes/cc-langs.el
773 (c-hungry-delete-key, c-auto-newline, c-auto-hungry-string): 778 (c-hungry-delete-key, c-auto-newline, c-auto-hungry-string):
774 Moved these state variables from cc-langs to cc-engine to make 779 Move these state variables from cc-langs to cc-engine to make
775 it possible to avoid loading cc-langs at runtime. 780 it possible to avoid loading cc-langs at runtime.
776 781
777 * progmodes/cc-defs.el (c-lang-defconst, c-lang-const): Moved 782 * progmodes/cc-defs.el (c-lang-defconst, c-lang-const):
778 from cc-langs and rewritten to make the language constant 783 Move from cc-langs and rewritten to make the language constant
779 system usable from derived modes. 784 system usable from derived modes.
780 785
781 (c-add-language): New function intended for use from derived modes 786 (c-add-language): New function intended for use from derived modes
782 that add new C-like languages. 787 that add new C-like languages.
783 788
784 * progmodes/cc-defs.el, progmodes/cc-vars.el 789 * progmodes/cc-defs.el, progmodes/cc-vars.el
785 (c-buffer-is-cc-mode): Moved from cc-vars to cc-defs to define 790 (c-buffer-is-cc-mode): Move from cc-vars to cc-defs to define
786 it during compilation. 791 it during compilation.
787 792
788 * progmodes/cc-bytecomp.el (cc-require-when-compile): New 793 * progmodes/cc-bytecomp.el (cc-require-when-compile):
789 support macro for compile time `require's. 794 New support macro for compile time `require's.
790 795
7912003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 7962003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
792 797
793 * progmodes/cc-defs.el, progmodes/cc-mode.el (c-version): 798 * progmodes/cc-defs.el, progmodes/cc-mode.el (c-version):
794 Moved from cc-mode to cc-defs to make it accessible to the 799 Move from cc-mode to cc-defs to make it accessible to the
795 other components. 800 other components.
796 801
797 * progmodes/cc-engine.el (c-forward-token-1, 802 * progmodes/cc-engine.el (c-forward-token-1, c-backward-token-1):
798 c-backward-token-1): Compatibility fix for emacsen that 803 Compatibility fix for emacsen that doesn't understand generic
799 doesn't understand generic string delimiters. 804 string delimiters.
800 805
801 * progmodes/cc-vars.el (c-emacs-features): Added detection of 806 * progmodes/cc-vars.el (c-emacs-features): Add detection of
802 generic string and comment delimiters. 807 generic string and comment delimiters.
803 808
804 * progmodes/cc-defs.el, progmodes/cc-langs.el 809 * progmodes/cc-defs.el, progmodes/cc-langs.el
805 (c-make-keywords-re): Changed interface to make it more 810 (c-make-keywords-re): Change interface to make it more extensible.
806 extensible.
807 811
808 * progmodes/cc-langs.el, progmodes/cc-defs.el (c-regexp-opt, 812 * progmodes/cc-langs.el, progmodes/cc-defs.el (c-regexp-opt)
809 c-regexp-opt-depth, c-make-keywords-re): Moved from cc-langs 813 (c-regexp-opt-depth, c-make-keywords-re): Move from cc-langs
810 to cc-defs since they are generally useful. 814 to cc-defs since they are generally useful.
811 815
812 * progmodes/cc-bytecomp.el, progmodes/cc-defs.el 816 * progmodes/cc-bytecomp.el, progmodes/cc-defs.el
813 (cc-eval-when-compile): Moved from cc-bytecomp to cc-defs to 817 (cc-eval-when-compile): Move from cc-bytecomp to cc-defs to
814 allow use at runtime. 818 allow use at runtime.
815 819
8162003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 8202003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
817 821
818 * progmodes/cc-bytecomp.el (cc-eval-when-compile): Workaround 822 * progmodes/cc-bytecomp.el (cc-eval-when-compile):
819 for a bug with nested `eval-when-compile' in XEmacs 21. 823 Workaround for a bug with nested `eval-when-compile' in XEmacs 21.
820 824
8212003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 8252003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
822 826
@@ -829,23 +833,22 @@
829 * progmodes/cc-align.el (c-lineup-cascaded-calls): Handle "." 833 * progmodes/cc-align.el (c-lineup-cascaded-calls): Handle "."
830 too, for use in Java. 834 too, for use in Java.
831 835
832 * progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Do 836 * progmodes/cc-engine.el (c-forward-sws, c-backward-sws):
833 not handle cpp directives in languages that doesn't have any. 837 Do not handle cpp directives in languages that doesn't have any.
834 838
8352003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 8392003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
836 840
837 * progmodes/cc-langs.el (c-operators): Added a high level 841 * progmodes/cc-langs.el (c-operators): Add a high level description
838 description of all operators, along with their precedence and 842 of all operators, along with their precedence and associativity.
839 associativity.
840 843
841 * progmodes/cc-align.el (c-lineup-multi-inher): Fixed bug 844 * progmodes/cc-align.el (c-lineup-multi-inher): Fix bug
842 where the position of the point and not the beginning of the 845 where the position of the point and not the beginning of the
843 line was used to calculate the indentation. 846 line was used to calculate the indentation.
844 847
8452003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 8482003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
846 849
847 * progmodes/cc-defs.el, progmodes/cc-engine.el 850 * progmodes/cc-defs.el, progmodes/cc-engine.el
848 (c-backward-single-comment, c-backward-comments): Added kludge 851 (c-backward-single-comment, c-backward-comments): Add kludge
849 for the bug in `forward-comment' in most (X)Emacs versions 852 for the bug in `forward-comment' in most (X)Emacs versions
850 where it moves back over the "*/" of a block comment if 853 where it moves back over the "*/" of a block comment if
851 there's no matching "/*". This has become more important now 854 there's no matching "/*". This has become more important now
@@ -853,12 +856,12 @@
853 856
8542003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 8572003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
855 858
856 * progmodes/cc-cmds.el (c-hungry-backspace, 859 * progmodes/cc-cmds.el (c-hungry-backspace)
857 c-hungry-delete-forward): New functions to do hungry deletion 860 (c-hungry-delete-forward): New functions to do hungry deletion
858 regardless of hungry-delete mode. Contributed by Kevin Ryde. 861 regardless of hungry-delete mode. Contributed by Kevin Ryde.
859 862
860 * progmodes/cc-engine.el (c-forward-sws, c-backward-sws, 863 * progmodes/cc-engine.el (c-forward-sws, c-backward-sws)
861 c-invalidate-sws-region): Use text properties to cache regions 864 (c-invalidate-sws-region): Use text properties to cache regions
862 with complex syntactic whitespace. This helps a lot in 865 with complex syntactic whitespace. This helps a lot in
863 improving responsiveness when there are lots of comments and 866 improving responsiveness when there are lots of comments and
864 cpp directives before point. 867 cpp directives before point.
@@ -869,31 +872,30 @@
869 progmodes/cc-menus.el, progmodes/cc-mode.el, 872 progmodes/cc-menus.el, progmodes/cc-mode.el,
870 progmodes/cc-styles.el, progmodes/cc-vars.el, 873 progmodes/cc-styles.el, progmodes/cc-vars.el,
871 progmodes/cc-engine.el, progmodes/cc-fonts.el, 874 progmodes/cc-engine.el, progmodes/cc-fonts.el,
872 progmodes/cc-cmds.el, progmodes/cc-defs.el: Introduced a 875 progmodes/cc-cmds.el, progmodes/cc-defs.el: Introduce a
873 classification of functions into those that make "hidden 876 classification of functions into those that make "hidden
874 buffer changes" and those who don't. This is prompted by the 877 buffer changes" and those who don't. This is prompted by the
875 increasing use of text properties for various things, to 878 increasing use of text properties for various things, to
876 correctly cover the silly buffer modifications that is caused 879 correctly cover the silly buffer modifications that is caused
877 by text property changes. 880 by text property changes.
878
879 (c-save-buffer-state): New macro that's put around any code that 881 (c-save-buffer-state): New macro that's put around any code that
880 can manipulate text properties. 882 can manipulate text properties.
881 883
8822003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 8842003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
883 885
884 * progmodes/cc-mode.el (c-basic-common-init): Setup 886 * progmodes/cc-mode.el (c-basic-common-init):
885 `text-property-default-nonsticky' to avoid messing with the 887 Setup `text-property-default-nonsticky' to avoid messing with the
886 rear-nonsticky property on each character in Emacs 21. 888 rear-nonsticky property on each character in Emacs 21.
887 889
888 * progmodes/cc-defs.el (c-clear-char-syntax, 890 * progmodes/cc-defs.el (c-clear-char-syntax, c-put-char-syntax):
889 c-put-char-syntax): Macros that sets and removes the 891 Macros that sets and removes the
890 syntax-table property on a single character and makes the 892 syntax-table property on a single character and makes the
891 property nonsticky in both directions in a suitable way for 893 property nonsticky in both directions in a suitable way for
892 each (X)Emacs flavor. 894 each (X)Emacs flavor.
893 895
894 * progmodes/cc-vars.el, progmodes/cc-defs.el, 896 * progmodes/cc-vars.el, progmodes/cc-defs.el,
895 progmodes/cc-engine.el, progmodes/cc-mode.el: Use 897 progmodes/cc-engine.el, progmodes/cc-mode.el:
896 `lookup-syntax-properties' in XEmacs to control whether the 898 Use `lookup-syntax-properties' in XEmacs to control whether the
897 syntax-table property has any effect or not. 899 syntax-table property has any effect or not.
898 900
899 (c-parse-sexp-lookup-properties): New macro that expands to either 901 (c-parse-sexp-lookup-properties): New macro that expands to either
@@ -913,45 +915,42 @@
913 and XEmacs now. 915 and XEmacs now.
914 916
915 * progmodes/cc-engine.el (c-forward-sws, c-backward-sws): 917 * progmodes/cc-engine.el (c-forward-sws, c-backward-sws):
916 Implemented a cache for the last large skipped over syntactic 918 Implement a cache for the last large skipped over syntactic
917 whitespace. This also has most effect after many macros. 919 whitespace. This also has most effect after many macros.
918 920
919 * progmodes/cc-engine.el, progmodes/cc-defs.el 921 * progmodes/cc-engine.el, progmodes/cc-defs.el
920 (c-forward-syntactic-ws, c-backward-syntactic-ws): Utilize the 922 (c-forward-syntactic-ws, c-backward-syntactic-ws): Utilize the
921 limit better when one is passed. These are now macros to 923 limit better when one is passed. These are now macros to
922 avoid a little overhead when no limit is given. 924 avoid a little overhead when no limit is given.
923
924 (c-forward-sws, c-backward-sws): New functions called by the 925 (c-forward-sws, c-backward-sws): New functions called by the
925 macros above to do the unbounded search. 926 macros above to do the unbounded search.
926 927
927 * progmodes/cc-fonts.el (c-font-lock-declarations): 928 * progmodes/cc-fonts.el (c-font-lock-declarations):
928 Implemented a cache for the first backward search for a 929 Implement a cache for the first backward search for a
929 preceding `c-decl-prefix-re' match. This typically speeds up 930 preceding `c-decl-prefix-re' match. This typically speeds up
930 interactive refontification a lot on the top level of macro 931 interactive refontification a lot on the top level of macro
931 heavy header files. 932 heavy header files.
932 933
9332003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 9342003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
934 935
935 * progmodes/cc-vars.el (c-emacs-features): Added check for 936 * progmodes/cc-vars.el (c-emacs-features): Add check for
936 syntax text properties. 937 syntax text properties.
937 938
938 * progmodes/cc-mode.el (c-basic-common-init): Turn on 939 * progmodes/cc-mode.el (c-basic-common-init): Turn on
939 `parse-sexp-lookup-properties' if it's supported. Define the 940 `parse-sexp-lookup-properties' if it's supported. Define the
940 variable in any case since it's used at runtime to check on 941 variable in any case since it's used at runtime to check on this.
941 this.
942 942
943 * progmodes/cc-langs.el (c-identifier-key): Support C++ 943 * progmodes/cc-langs.el (c-identifier-key): Support C++
944 destructor names. 944 destructor names.
945 945 (c-identifier-start, c-op-token-regexp, c-type-modifier-kwds)
946 (c-identifier-start, c-op-token-regexp, c-type-modifier-kwds, 946 (c-opt-type-modifier-key, c-opt-type-component-key)
947 c-opt-type-modifier-key, c-opt-type-component-key, 947 (c-typedef-specifier-kwds, c-typedef-specifier-key)
948 c-typedef-specifier-kwds, c-typedef-specifier-key, 948 (c-paren-stmt-kwds, c-paren-stmt-key, c-syntactic-ws-start):
949 c-paren-stmt-kwds, c-paren-stmt-key, c-syntactic-ws-start): A 949 A bunch of new language constants and variables to support the
950 bunch of new language constants and variables to support the
951 improved handling of names and types. 950 improved handling of names and types.
952 951
953 * progmodes/cc-fonts.el (c-font-lock-declarators, 952 * progmodes/cc-fonts.el (c-font-lock-declarators)
954 c-font-lock-declarations): Handle C++ template declarations 953 (c-font-lock-declarations): Handle C++ template declarations
955 and template references. Fontify complex types and names more 954 and template references. Fontify complex types and names more
956 accurately by delegating it to `c-forward-type' and 955 accurately by delegating it to `c-forward-type' and
957 `c-forward-name'. Fontify the identifiers in typedef 956 `c-forward-name'. Fontify the identifiers in typedef
@@ -961,41 +960,34 @@
961 to move forward over a C++ template arglist. It also marks 960 to move forward over a C++ template arglist. It also marks
962 the '<' and '>' chars with paren syntax using the syntax-table 961 the '<' and '>' chars with paren syntax using the syntax-table
963 property, to speed up later calls in emacsen that support 962 property, to speed up later calls in emacsen that support
964 syntax text properties (Emacs >= 20 and (undocumented) XEmacs 963 syntax text properties (Emacs >= 20 and (undocumented) XEmacs 21).
965 21).
966
967 This also has the very interesting effect that if font locking 964 This also has the very interesting effect that if font locking
968 is used with decoration level 3 or higher in these emacsen 965 is used with decoration level 3 or higher in these emacsen
969 then template arglists will behave just like paren sexps with 966 then template arglists will behave just like paren sexps with
970 the various sexp movement commands. 967 the various sexp movement commands.
971
972 (c-forward-name): New function to move over a name. Simple in 968 (c-forward-name): New function to move over a name. Simple in
973 most languages except C++ where a name can contain template 969 most languages except C++ where a name can contain template
974 arglists and therefore almost arbitrary expressions. 970 arglists and therefore almost arbitrary expressions.
975
976 (c-on-identifier): Fix for Pike operator identifiers. 971 (c-on-identifier): Fix for Pike operator identifiers.
972 (c-simple-skip-symbol-backward, c-syntactic-content)
973 (c-remove-<>-paren-properties): New helper functions.
977 974
978 (c-simple-skip-symbol-backward, c-syntactic-content, 975 * progmodes/cc-defs.el: (c-clear-char-syntax)
979 c-remove-<>-paren-properties): New helper functions. 976 (c-mark-paren-open, c-mark-paren-close): New support functions
980 977 to handle syntactic properties on C++ template arglist brackets.
981 * progmodes/cc-defs.el: (c-clear-char-syntax,
982 c-mark-paren-open, c-mark-paren-close): New support functions
983 to handle syntactic properties on C++ template arglist
984 brackets.
985
986 (c-put-type-face, c-put-reference-face): Helpers to put faces on 978 (c-put-type-face, c-put-reference-face): Helpers to put faces on
987 regions, since there are a bit of that inside `c-forward-name' etc 979 regions, since there are a bit of that inside `c-forward-name' etc
988 in progmodes/cc-engine.el. 980 in progmodes/cc-engine.el.
989 981
990 * progmodes/cc-engine.el, progmodes/cc-fonts.el, 982 * progmodes/cc-engine.el, progmodes/cc-fonts.el,
991 progmodes/cc-langs.el: Fixed the names on a number of regexp 983 progmodes/cc-langs.el: Fix the names on a number of regexp
992 language variables to conform to the nomenclature and 984 language variables to conform to the nomenclature and
993 shortened some names. 985 shortened some names.
994 986
995 * progmodes/cc-align.el, progmodes/cc-cmds.el, 987 * progmodes/cc-align.el, progmodes/cc-cmds.el,
996 progmodes/cc-fonts.el, progmodes/cc-engine.el 988 progmodes/cc-fonts.el, progmodes/cc-engine.el
997 (c-syntactic-re-search-forward): Removed the COUNT argument 989 (c-syntactic-re-search-forward): Remove the COUNT argument
998 since it's never used. Added an argument to tell which 990 since it's never used. Add an argument to tell which
999 subexpression whose end should be tested for syntactic 991 subexpression whose end should be tested for syntactic
1000 relevance. Using this also removes some optimizations, so 992 relevance. Using this also removes some optimizations, so
1001 that it's possible to use a look behind subexpression that 993 that it's possible to use a look behind subexpression that
@@ -1005,8 +997,8 @@
1005 (c-guess-continued-construct): Don't match <<= or >>= for the 997 (c-guess-continued-construct): Don't match <<= or >>= for the
1006 stream-op syntactic element. 998 stream-op syntactic element.
1007 999
1008 * progmodes/cc-defs.el (c-paren-re, c-identifier-re): Removed 1000 * progmodes/cc-defs.el (c-paren-re, c-identifier-re):
1009 these helper macros since better and more correct tools are 1001 Remove these helper macros since better and more correct tools are
1010 now available in progmodes/cc-langs.el. 1002 now available in progmodes/cc-langs.el.
1011 1003
10122003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 10042003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -1016,9 +1008,9 @@
1016 1008
10172003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 10092003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1018 1010
1019 * progmodes/cc-langs.el (c-populate-syntax-table): XEmacs 1011 * progmodes/cc-langs.el (c-populate-syntax-table):
1020 classifies the hard space character as a symbol character but 1012 XEmacs classifies the hard space character as a symbol character
1021 it's better to let it be in the punctuation class so that it's 1013 but it's better to let it be in the punctuation class so that it's
1022 always highlighted with the inverted invalid face. It can 1014 always highlighted with the inverted invalid face. It can
1023 perhaps be argued that that character is allowed in 1015 perhaps be argued that that character is allowed in
1024 identifiers in some languages (haven't checked), but using it 1016 identifiers in some languages (haven't checked), but using it
@@ -1026,7 +1018,7 @@
1026 1018
10272003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 10192003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1028 1020
1029 * progmodes/cc-engine.el (c-beginning-of-statement-1): Fixed a 1021 * progmodes/cc-engine.el (c-beginning-of-statement-1): Fix a
1030 case when a labeled substatement caused incorrect association 1022 case when a labeled substatement caused incorrect association
1031 of the following continuation clause. 1023 of the following continuation clause.
1032 1024
@@ -1036,19 +1028,19 @@
1036 1028
1037 (c-guess-continued-construct): Analyze the "K&R region" of a 1029 (c-guess-continued-construct): Analyze the "K&R region" of a
1038 function nested inside a function as func-decl-cont and not 1030 function nested inside a function as func-decl-cont and not
1039 statement-cont. New case E. Also cleaned up case C (stream-op 1031 statement-cont. New case E. Also clean up case C (stream-op
1040 recognition) a bit. 1032 recognition) a bit.
1041 1033
1042 * progmodes/cc-engine.el (c-parse-state, c-check-state-cache): 1034 * progmodes/cc-engine.el (c-parse-state, c-check-state-cache):
1043 Moved the check on `c-state-cache-start' from 1035 Move the check on `c-state-cache-start' from
1044 `c-check-state-cache' to `c-parse-state' so that the state 1036 `c-check-state-cache' to `c-parse-state' so that the state
1045 cache isn't zapped if `c-check-state-cache' but not 1037 cache isn't zapped if `c-check-state-cache' but not
1046 `c-parse-state' is called during a temporary narrowing. This 1038 `c-parse-state' is called during a temporary narrowing.
1047 fixes a performance problem that could occur when 1039 This fixes a performance problem that could occur when
1048 `fill-paragraph' is used in font lock mode on a comment at the 1040 `fill-paragraph' is used in font lock mode on a comment at the
1049 end of a large class or function. 1041 end of a large class or function.
1050 1042
1051 (c-state-cache-start): Fixed buffer localness. 1043 (c-state-cache-start): Fix buffer localness.
1052 1044
10532003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 10452003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1054 1046
@@ -1057,15 +1049,15 @@
1057 1049
10582003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 10502003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1059 1051
1060 * progmodes/cc-langs.el: Updated the keywords and operator 1052 * progmodes/cc-langs.el: Update the keywords and operator
1061 tokens from the latest C++ and Java standards. Some other 1053 tokens from the latest C++ and Java standards. Some other
1062 multichar token corrections. 1054 multichar token corrections.
1063 1055
10642003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 10562003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1065 1057
1066 * progmodes/cc-cmds.el, progmodes/cc-engine.el, 1058 * progmodes/cc-cmds.el, progmodes/cc-engine.el,
1067 progmodes/cc-vars.el (c-syntactic-context, 1059 progmodes/cc-vars.el (c-syntactic-context)
1068 c-syntactic-element): Do not bind any values to these 1060 (c-syntactic-element): Do not bind any values to these
1069 variables globally since they should always be dynamically 1061 variables globally since they should always be dynamically
1070 bound. This makes it much easier to debug cases when they've 1062 bound. This makes it much easier to debug cases when they've
1071 gotten global values somehow. 1063 gotten global values somehow.
@@ -1074,26 +1066,25 @@
1074 1066
1075 * progmodes/cc-langs.el (c-regexp-opt): Fix to work around the 1067 * progmodes/cc-langs.el (c-regexp-opt): Fix to work around the
1076 non-greedy behavior that the regexp engine sometimes exposes. 1068 non-greedy behavior that the regexp engine sometimes exposes.
1077 This bug only shows in (X)Emacs 19 where there's no regexp-opt 1069 This bug only shows in (X)Emacs 19 where there's no regexp-opt package.
1078 package.
1079 1070
1080 * progmodes/cc-engine.el (c-syntactic-re-search-forward): 1071 * progmodes/cc-engine.el (c-syntactic-re-search-forward):
1081 Added a feature to filter out matches in the middle of tokens. 1072 Add a feature to filter out matches in the middle of tokens.
1082 Changed the comment to a docstring since I consider this 1073 Changed the comment to a docstring since I consider this
1083 function generally useful. 1074 function generally useful.
1084 1075
1085 * progmodes/cc-defs.el (c-mode-symbol): Broke out a part of 1076 * progmodes/cc-defs.el (c-mode-symbol): Break out a part of
1086 `c-mode-var'. 1077 `c-mode-var'.
1087 1078
1088 * progmodes/cc-align.el (c-lineup-cascaded-calls, 1079 * progmodes/cc-align.el (c-lineup-cascaded-calls)
1089 c-lineup-gcc-asm-reg): Cope with that `c-most-enclosing-brace' 1080 (c-lineup-gcc-asm-reg): Cope with that `c-most-enclosing-brace'
1090 might return nil. 1081 might return nil.
1091 1082
10922003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 10832003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1093 1084
1094 * progmodes/cc-engine.el (c-found-types, c-clear-found-types, 1085 * progmodes/cc-engine.el (c-found-types, c-clear-found-types)
1095 c-add-type, c-check-type, c-add-complex-type, 1086 (c-add-type, c-check-type, c-add-complex-type)
1096 c-list-found-types, c-forward-type): Added a sort of symbol 1087 (c-list-found-types, c-forward-type): Add a sort of symbol
1097 table for types: If a name is recognized as a type in a 1088 table for types: If a name is recognized as a type in a
1098 declaration it's added in an obarray to be able to recognize 1089 declaration it's added in an obarray to be able to recognize
1099 it in other ambiguous declarations. 1090 it in other ambiguous declarations.
@@ -1114,25 +1105,24 @@
1114 1105
11152003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 11062003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1116 1107
1117 * progmodes/cc-engine.el (c-forward-syntactic-ws): Fixed a bug 1108 * progmodes/cc-engine.el (c-forward-syntactic-ws): Fix a bug
1118 that could cause an infinite loop if something that looks like 1109 that could cause an infinite loop if something that looks like
1119 a macro begins in the middle of a line. 1110 a macro begins in the middle of a line.
1120 1111
1121 (c-parse-state): Fixed a bug that could cause `c-state-cache' 1112 (c-parse-state): Fix a bug that could cause `c-state-cache'
1122 to contain two conses in sequence when there's an unbalanced 1113 to contain two conses in sequence when there's an unbalanced
1123 open paren in a macro. 1114 open paren in a macro.
1124 1115
11252003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 11162003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1126 1117
1127 * progmodes/cc-defs.el (c-face-name-p): A defsubst to 1118 * progmodes/cc-defs.el (c-face-name-p): A defsubst to
1128 recognize the name of a face in a way that works also in 1119 recognize the name of a face in a way that works also in XEmacs.
1129 XEmacs.
1130 1120
1131 * progmodes/cc-engine.el (c-forward-type): New function to 1121 * progmodes/cc-engine.el (c-forward-type): New function to
1132 move past a type spec. 1122 move past a type spec.
1133 1123
1134 * progmodes/cc-engine.el (c-syntactic-re-search-forward): 1124 * progmodes/cc-engine.el (c-syntactic-re-search-forward):
1135 Fixed behavior when the limit is reached inside a comment, 1125 Fix behavior when the limit is reached inside a comment,
1136 string, or a macro. 1126 string, or a macro.
1137 1127
1138 * progmodes/cc-align.el, progmodes/cc-cmds.el, 1128 * progmodes/cc-align.el, progmodes/cc-cmds.el,
@@ -1143,16 +1133,16 @@
1143 four different cases it's actually used. These replacements 1133 four different cases it's actually used. These replacements
1144 also treats line continuations as whitespace. 1134 also treats line continuations as whitespace.
1145 1135
1146 (c-forward-comment): Removed. The four different cases above 1136 (c-forward-comment): Remove. The four different cases above
1147 are basically different, so it's better to make them into 1137 are basically different, so it's better to make them into
1148 separate functions than choose between them at runtime using 1138 separate functions than choose between them at runtime using
1149 the argument. 1139 the argument.
1150 1140
11512003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 11412003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1152 1142
1153 * progmodes/cc-align.el (c-gnu-impose-minimum): Fixed bug due 1143 * progmodes/cc-align.el (c-gnu-impose-minimum): Fix bug due
1154 to the new placement of cpp-macro and comment-intro in the 1144 to the new placement of cpp-macro and comment-intro in the
1155 syntactic context, as pointed out by Kevin Ryde. Changed the 1145 syntactic context, as pointed out by Kevin Ryde. Change the
1156 method that decides whether point is inside a top-level 1146 method that decides whether point is inside a top-level
1157 construct to one that doesn't depend on the set of syntactic 1147 construct to one that doesn't depend on the set of syntactic
1158 elements so much. 1148 elements so much.
@@ -1163,31 +1153,31 @@
1163 1153
11642003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 11542003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1165 1155
1166 * progmodes/cc-cmds.el (c-mask-comment): Fixed a bug that 1156 * progmodes/cc-cmds.el (c-mask-comment): Fix a bug that
1167 sometimes caused code after a closed block comment to be taken 1157 sometimes caused code after a closed block comment to be taken
1168 into account when the fill prefix is calculated. 1158 into account when the fill prefix is calculated.
1169 1159
11702003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 11602003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1171 1161
1172 * progmodes/cc-align.el (c-lineup-arglist, c-lineup-argcont, 1162 * progmodes/cc-align.el (c-lineup-arglist, c-lineup-argcont)
1173 c-lineup-math, c-lineup-cascaded-calls, c-lineup-gcc-asm-reg): 1163 (c-lineup-math, c-lineup-cascaded-calls, c-lineup-gcc-asm-reg):
1174 Fixes to cope correctly with nested arglists for the lineups 1164 Fixes to cope correctly with nested arglists for the lineups
1175 that can be used with arglist-cont-nonempty. 1165 that can be used with arglist-cont-nonempty.
1176 1166
11772003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 11672003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1178 1168
1179 * progmodes/cc-engine.el (c-add-stmt-syntax, 1169 * progmodes/cc-engine.el (c-add-stmt-syntax, c-guess-basic-syntax):
1180 c-guess-basic-syntax): Changed the anchor position of 1170 Change the anchor position of
1181 arglist-cont-nonempty and arglist-close so that a relative 1171 arglist-cont-nonempty and arglist-close so that a relative
1182 indentation like + can be used with consistent results. Prior 1172 indentation like + can be used with consistent results.
1183 to this, the indentation engine more or less assumed that 1173 Prior to this, the indentation engine more or less assumed that
1184 arglist-cont-nonempty always used `c-lineup-arglist'. Those 1174 arglist-cont-nonempty always used `c-lineup-arglist'.
1185 two syntax symbols also get the opening paren as an extra 1175 Those two syntax symbols also get the opening paren as an extra
1186 position, to make it possible for `c-lineup-arglist' to 1176 position, to make it possible for `c-lineup-arglist' to
1187 continue to do a proper job. 1177 continue to do a proper job.
1188 1178
1189 * progmodes/cc-engine.el (c-get-syntactic-indentation): A 1179 * progmodes/cc-engine.el (c-get-syntactic-indentation):
1190 vector with an absolute indentation column now only overrides 1180 A vector with an absolute indentation column now only overrides
1191 the indentation for surrounding structures, i.e. those whose 1181 the indentation for surrounding structures, i.e. those whose
1192 syntactic elements are earlier in the `c-syntactic-context' 1182 syntactic elements are earlier in the `c-syntactic-context'
1193 list, but not nested ones. This so that 1183 list, but not nested ones. This so that
@@ -1196,7 +1186,6 @@
1196 nested things, e.g. the arglist-close of a nested argument 1186 nested things, e.g. the arglist-close of a nested argument
1197 list. This change means that the order in 1187 list. This change means that the order in
1198 `c-syntactic-context' has become more essential. 1188 `c-syntactic-context' has become more essential.
1199
1200 (c-guess-basic-syntax): Changes to make the nesting order of the 1189 (c-guess-basic-syntax): Changes to make the nesting order of the
1201 returned syntax list correct. 1190 returned syntax list correct.
1202 1191
@@ -1210,9 +1199,9 @@
1210 1199
1211 * progmodes/cc-align.el, progmodes/cc-defs.el, 1200 * progmodes/cc-align.el, progmodes/cc-defs.el,
1212 progmodes/cc-engine.el, progmodes/cc-vars.el 1201 progmodes/cc-engine.el, progmodes/cc-vars.el
1213 (c-guess-basic-syntax, c-calc-offset, 1202 (c-guess-basic-syntax, c-calc-offset)
1214 c-get-syntactic-indentation, c-syntactic-context): Extended 1203 (c-get-syntactic-indentation, c-syntactic-context):
1215 the representation of the syntactic context: Previously it was 1204 Extend the representation of the syntactic context: Previously it was
1216 a list containing cons cells of the found syntactic symbols 1205 a list containing cons cells of the found syntactic symbols
1217 and their relpos values. Now each element is instead a list 1206 and their relpos values. Now each element is instead a list
1218 containing the syntactic symbol in the first element and the 1207 containing the syntactic symbol in the first element and the
@@ -1229,8 +1218,8 @@
1229 1218
12302003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12192003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1231 1220
1232 * progmodes/cc-styles.el (c-set-style, c-set-style-1): Added 1221 * progmodes/cc-styles.el (c-set-style, c-set-style-1):
1233 another state for the `dont-override' flag where it only keeps 1222 Add another state for the `dont-override' flag where it only keeps
1234 globally set variables. 1223 globally set variables.
1235 1224
12362003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12252003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
@@ -1241,18 +1230,17 @@
12412003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12302003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1242 1231
1243 * progmodes/cc-vars.el, progmodes/cc-fonts.el, 1232 * progmodes/cc-vars.el, progmodes/cc-fonts.el,
1244 progmodes/cc-langs.el, progmodes/cc-mode.el: Added font lock 1233 progmodes/cc-langs.el, progmodes/cc-mode.el: Add font lock support.
1245 support.
1246 1234
1247 * progmodes/cc-engine.el (c-beginning-of-syntax): New function 1235 * progmodes/cc-engine.el (c-beginning-of-syntax): New function
1248 to be used for font-lock-beginning-of-syntax-function. It 1236 to be used for font-lock-beginning-of-syntax-function.
1249 uses the state cache to quickly find a good position. 1237 It uses the state cache to quickly find a good position.
1250 1238
1251 * progmodes/cc-defs.el (c-major-mode-is): Allow a list of 1239 * progmodes/cc-defs.el (c-major-mode-is): Allow a list of
1252 modes. Made it a macro ensure that it's optimized to either 1240 modes. Made it a macro ensure that it's optimized to either
1253 eq or memq for constant arguments. 1241 eq or memq for constant arguments.
1254 1242
1255 * progmodes/cc-mode.el (c-common-init): Did away with the 1243 * progmodes/cc-mode.el (c-common-init): Do away with the
1256 hardcoded setting of `comment-column'; it's a user variable 1244 hardcoded setting of `comment-column'; it's a user variable
1257 that we have no business meddling with. Since the default 1245 that we have no business meddling with. Since the default
1258 value for it is 32 in all supported (X)Emacs versions, it's 1246 value for it is 32 in all supported (X)Emacs versions, it's
@@ -1265,22 +1253,20 @@
1265 1253
12662003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12542003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1267 1255
1268 * progmodes/cc-engine.el (c-add-stmt-syntax): Fixed some cases 1256 * progmodes/cc-engine.el (c-add-stmt-syntax): Fix some cases
1269 of wrong anchoring, e.g. for else-if compounds. 1257 of wrong anchoring, e.g. for else-if compounds.
1270 1258
12712003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12592003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1272 1260
1273 * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed anchor 1261 * progmodes/cc-engine.el (c-guess-basic-syntax): Fix anchor
1274 position for defun-open in K&R style functions. 1262 position for defun-open in K&R style functions.
1275 1263
1276 * progmodes/cc-engine.el (c-in-knr-argdecl): Don't trip up on 1264 * progmodes/cc-engine.el (c-in-knr-argdecl): Don't trip up on macros.
1277 macros.
1278 1265
1279 (c-search-decl-header-end): Handle C++ template arguments more 1266 (c-search-decl-header-end): Handle C++ template arguments more
1280 correctly. 1267 correctly.
1281 1268
1282 (c-beginning-of-decl-1): Fix when the declaration is first in a 1269 (c-beginning-of-decl-1): Fix when the declaration is first in a macro.
1283 macro.
1284 1270
12852003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12712003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1286 1272
@@ -1293,21 +1279,20 @@
1293 1279
12942003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12802003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1295 1281
1296 * progmodes/cc-langs.el (c-make-keywords-re): Fixed the 1282 * progmodes/cc-langs.el (c-make-keywords-re): Fix the
1297 keyword adornment so that it works when a keyword ends with 1283 keyword adornment so that it works when a keyword ends with "_".
1298 "_".
1299 1284
13002003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12852003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1301 1286
1302 * progmodes/cc-cmds.el (c-mask-comment): More fixes when used 1287 * progmodes/cc-cmds.el (c-mask-comment): More fixes when used
1303 from `c-do-auto-fill' and point is at or near the limit of the 1288 from `c-do-auto-fill' and point is at or near the limit of the
1304 comment. Fixed bug when the prefix from `c-guess-fill-prefix' 1289 comment. Fix bug when the prefix from `c-guess-fill-prefix'
1305 is longer than the text on the first line of the comment when 1290 is longer than the text on the first line of the comment when
1306 it's masked. 1291 it's masked.
1307 1292
13082003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> 12932003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org>
1309 1294
1310 * progmodes/cc-cmds.el (c-mask-comment): Fixed bug where point 1295 * progmodes/cc-cmds.el (c-mask-comment): Fix bug where point
1311 was moved to the following line when it was at the first line 1296 was moved to the following line when it was at the first line
1312 of a block comment where comment-start-skip matched to eol. 1297 of a block comment where comment-start-skip matched to eol.
1313 1298
@@ -1338,8 +1323,8 @@
1338 1323
1339 * menu-bar.el (menu-bar-options-menu): Move mouse-set-fonts item here. 1324 * menu-bar.el (menu-bar-options-menu): Move mouse-set-fonts item here.
1340 1325
1341 * international/mule-cmds.el (mule-menu-keymap): Delete 1326 * international/mule-cmds.el (mule-menu-keymap):
1342 mouse-set-fonts item here. 1327 Delete mouse-set-fonts item here.
1343 1328
13442003-06-29 Nick Roberts <nick@nick.uklinux.net> 13292003-06-29 Nick Roberts <nick@nick.uklinux.net>
1345 1330
@@ -1359,12 +1344,12 @@
1359 1344
13602003-06-27 Kai Gro,A_(Bjohann <kai.grossjohann@gmx.net> 13452003-06-27 Kai Gro,A_(Bjohann <kai.grossjohann@gmx.net>
1361 1346
1362 * international/mule-cmds.el (menu-bar-options-menu): Move 1347 * international/mule-cmds.el (menu-bar-options-menu):
1363 `mouse-set-fonts' here from Options/Mule submenu. 1348 Move `mouse-set-fonts' here from Options/Mule submenu.
1364 1349
13652003-06-26 Stephen Eglen <stephen@gnu.org> 13502003-06-26 Stephen Eglen <stephen@gnu.org>
1366 1351
1367 * iswitchb.el (iswitchb-read-buffer): Remove redudant variable 1352 * iswitchb.el (iswitchb-read-buffer): Remove redundant variable
1368 iswitchb-prepost-hooks. 1353 iswitchb-prepost-hooks.
1369 (iswitchb-xemacs): Delete variable and use (featurep 'xemacs) 1354 (iswitchb-xemacs): Delete variable and use (featurep 'xemacs)
1370 and fboundp instead. 1355 and fboundp instead.
@@ -1373,14 +1358,14 @@
1373 1358
13742003-06-20 Masatake YAMATO <jet@gyve.org> 13592003-06-20 Masatake YAMATO <jet@gyve.org>
1375 1360
1376 * progmodes/asm-mode.el (asm-font-lock-keywords): Support 1361 * progmodes/asm-mode.el (asm-font-lock-keywords):
1377 labels starting with "." and directives starting with ".". 1362 Support labels starting with "." and directives starting with ".".
1378 1363
13792003-06-22 Andreas Schwab <schwab@suse.de> 13642003-06-22 Andreas Schwab <schwab@suse.de>
1380 1365
1381 * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation): Avoid 1366 * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation):
1382 variable as format argument for error. Don't call symbol-name on 1367 Avoid variable as format argument for error.
1383 string. 1368 Don't call symbol-name on string.
1384 1369
1385 * eshell/esh-opt.el (eshell-do-opt): Avoid variable as format 1370 * eshell/esh-opt.el (eshell-do-opt): Avoid variable as format
1386 argument for error. 1371 argument for error.
@@ -1393,8 +1378,7 @@
1393 (diary, view-diary-entries, show-all-diary-entries) 1378 (diary, view-diary-entries, show-all-diary-entries)
1394 (mark-diary-entries): Use it. 1379 (mark-diary-entries): Use it.
1395 (view-other-diary-entries): Doc fix. Use `prefix-numeric-value'. 1380 (view-other-diary-entries): Doc fix. Use `prefix-numeric-value'.
1396 (diary-syntax-table, diary-attrtype-convert, diary-mail-days): Doc 1381 (diary-syntax-table, diary-attrtype-convert, diary-mail-days): Doc fix.
1397 fix.
1398 (diary-modified, d-file): No need to defvar (for compiler). 1382 (diary-modified, d-file): No need to defvar (for compiler).
1399 (list-diary-entries): No need for `let*' so use `let'. 1383 (list-diary-entries): No need for `let*' so use `let'.
1400 (simple-diary-display): Use `diary-file' directly rather than 1384 (simple-diary-display): Use `diary-file' directly rather than
@@ -1403,8 +1387,7 @@
1403 `mode-line-format' already buffer-local. 1387 `mode-line-format' already buffer-local.
1404 (diary-mail-addr): Set to the empty string (rather than nil) if 1388 (diary-mail-addr): Set to the empty string (rather than nil) if
1405 undefined, as per `user-mail-address'. 1389 undefined, as per `user-mail-address'.
1406 (diary-mail-entries): Doc fix. Error if `diary-mail-address' 1390 (diary-mail-entries): Doc fix. Error if `diary-mail-address' unset.
1407 unset.
1408 (mark-sexp-diary-entries): Don't regexp-quote sexp-mark twice. 1391 (mark-sexp-diary-entries): Don't regexp-quote sexp-mark twice.
1409 Remove an un-needed `if'. 1392 Remove an un-needed `if'.
1410 (list-sexp-diary-entries): Remove local vars mark and s-entry, and 1393 (list-sexp-diary-entries): Remove local vars mark and s-entry, and