commit/cc-mode: acm: Remove spurious syntax-table text properties inserted by C-y.
11 years, 7 months
Bitbucket
1 new commit in cc-mode:
https://bitbucket.org/xemacs/cc-mode/commits/354bd811b130/
Changeset: 354bd811b130
User: acm
Date: 2013-05-27 14:16:57
Summary: Remove spurious syntax-table text properties inserted by C-y.
cc-mode.el (c-after-change): Also clear hard syntax-table property
with value nil.
Affected #: 1 file
diff -r 34b16d59ee7db5a67e43692a1d0f39e6adf100bf -r 354bd811b130b31f4658b52584b3a2b69df9a20d cc-mode.el
--- a/cc-mode.el
+++ b/cc-mode.el
@@ -1100,13 +1100,14 @@
(setq beg end)))
;; C-y is capable of spuriously converting category properties
- ;; c-</>-as-paren-syntax into hard syntax-table properties. Remove
- ;; these when it happens.
+ ;; c-</>-as-paren-syntax and c-cpp-delimiter into hard syntax-table
+ ;; properties. Remove these when it happens.
(when (memq 'category-properties c-emacs-features)
(c-clear-char-property-with-value beg end 'syntax-table
c-<-as-paren-syntax)
(c-clear-char-property-with-value beg end 'syntax-table
- c->-as-paren-syntax))
+ c->-as-paren-syntax)
+ (c-clear-char-property-with-value beg end 'syntax-table nil))
(c-trim-found-types beg end old-len) ; maybe we don't need all of these.
(c-invalidate-sws-region-after beg end)
Repository URL: https://bitbucket.org/xemacs/cc-mode/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/xemacs-packages: 5 new changesets
11 years, 7 months
Bitbucket
5 new commits in xemacs-packages:
https://bitbucket.org/xemacs/xemacs-packages/commits/0f17eeada9ac/
Changeset: 0f17eeada9ac
User: Norbert Koch
Date: 2013-04-17 22:10:48
Summary: update cc-mode hyperbole prog-modes
Affected #: 1 file
diff -r 20f4a9e2c20eeade7e990fe89779b9964dc13cbc -r 0f17eeada9ac0d1722884296ea59468133589078 .hgsubstate
--- a/.hgsubstate
+++ b/.hgsubstate
@@ -17,7 +17,7 @@
da4e7d4a51c502e5ac05a224cb756f382f0ba4d7 xemacs-packages/c-support
11074b3808d1e349f3fddb3c4d50f8be7c0f859e xemacs-packages/calc
7524e4fb9de45d77812090a724fac4ebd7549d6e xemacs-packages/calendar
-69c1bab677d6c446cab32df89acb21e6d6aa5727 xemacs-packages/cc-mode
+595d627b2433db1d3b428d20902f06e51c4b7dda xemacs-packages/cc-mode
a7ae1cfb2376bcd32617c1c88afe08872b11d298 xemacs-packages/cedet-common
87dd21fac17ea98219267b1378b4696698d6c4ff xemacs-packages/clearcase
e18acdbfcd36295d052cd56fa2e6d78c68b4b7d4 xemacs-packages/cogre
@@ -58,7 +58,7 @@
a72a46dbb57f5454673cdace404d40be6d41d555 xemacs-packages/guided-tour
475c1c54240ae796e80e8222cf0177c038566dc4 xemacs-packages/haskell-mode
9cc3f88c82e0c1f98b9c348e9c1c59634c2997d4 xemacs-packages/hm--html-menus
-08dc729d2781ba4b30cdbddb6a434e0dd169f129 xemacs-packages/hyperbole
+341eb618abad9807a26e6cb7364b73be406bf5c6 xemacs-packages/hyperbole
b85435dccb37be94ece1651a8b41991c21c70bf0 xemacs-packages/ibuffer
76291e750254101960e1e11da4bb75e0d4ede8f1 xemacs-packages/idlwave
43cca92c4e7441510b32c180fa6812324851d7ec xemacs-packages/igrep
@@ -83,7 +83,7 @@
bb764ada03558fbbb5453138c6437513fdea84bf xemacs-packages/pcomplete
be87a7f039ffe86a1129c8e37633de2d45c484c5 xemacs-packages/perl-modes
f937cd3de668adac94e4969c606c6bb90c750ac0 xemacs-packages/pgg
-e5d5caa0c9c68f304f2ed904106843ce5cb1d535 xemacs-packages/prog-modes
+226ae620b7169243c2f8a508eda870fd3cb16f8a xemacs-packages/prog-modes
a4fa5060de96681c204e05aa56c8b6c39d55055f xemacs-packages/ps-print
d0a307d344ea9cf04d68284fcb68be2f7686866a xemacs-packages/ps-print-nomule
3e112e0ce8588d4e0631f32692ae169f19ee4b42 xemacs-packages/psgml
https://bitbucket.org/xemacs/xemacs-packages/commits/fe5bb3b3a024/
Changeset: fe5bb3b3a024
User: Norbert Koch
Date: 2013-04-17 22:11:40
Summary: XEmacs Package Release
Affected #: 1 file
diff -r 0f17eeada9ac0d1722884296ea59468133589078 -r fe5bb3b3a024a64e0388c7044be369f161c47ad0 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-17 Norbert Koch <viteno(a)xemacs.org>
+
+ * Packages released: cc-mode, hyperbole, prog-modes.
+
2013-04-04 Norbert Koch <viteno(a)xemacs.org>
* Packages released: cc-mode.
https://bitbucket.org/xemacs/xemacs-packages/commits/067d976a9cb6/
Changeset: 067d976a9cb6
User: Norbert Koch
Date: 2013-05-07 10:23:26
Summary: update and merge cc-mode
Affected #: 1 file
diff -r fe5bb3b3a024a64e0388c7044be369f161c47ad0 -r 067d976a9cb64e25be861ea528e165dde85af516 .hgsubstate
--- a/.hgsubstate
+++ b/.hgsubstate
@@ -17,7 +17,7 @@
da4e7d4a51c502e5ac05a224cb756f382f0ba4d7 xemacs-packages/c-support
11074b3808d1e349f3fddb3c4d50f8be7c0f859e xemacs-packages/calc
7524e4fb9de45d77812090a724fac4ebd7549d6e xemacs-packages/calendar
-595d627b2433db1d3b428d20902f06e51c4b7dda xemacs-packages/cc-mode
+fc3861c0a6014e8609c1d73370e49c27c460ee42 xemacs-packages/cc-mode
a7ae1cfb2376bcd32617c1c88afe08872b11d298 xemacs-packages/cedet-common
87dd21fac17ea98219267b1378b4696698d6c4ff xemacs-packages/clearcase
e18acdbfcd36295d052cd56fa2e6d78c68b4b7d4 xemacs-packages/cogre
@@ -58,7 +58,7 @@
a72a46dbb57f5454673cdace404d40be6d41d555 xemacs-packages/guided-tour
475c1c54240ae796e80e8222cf0177c038566dc4 xemacs-packages/haskell-mode
9cc3f88c82e0c1f98b9c348e9c1c59634c2997d4 xemacs-packages/hm--html-menus
-341eb618abad9807a26e6cb7364b73be406bf5c6 xemacs-packages/hyperbole
+9f51888f52b6e2906e550f6b93a7fe861d5efe30 xemacs-packages/hyperbole
b85435dccb37be94ece1651a8b41991c21c70bf0 xemacs-packages/ibuffer
76291e750254101960e1e11da4bb75e0d4ede8f1 xemacs-packages/idlwave
43cca92c4e7441510b32c180fa6812324851d7ec xemacs-packages/igrep
@@ -83,7 +83,7 @@
bb764ada03558fbbb5453138c6437513fdea84bf xemacs-packages/pcomplete
be87a7f039ffe86a1129c8e37633de2d45c484c5 xemacs-packages/perl-modes
f937cd3de668adac94e4969c606c6bb90c750ac0 xemacs-packages/pgg
-226ae620b7169243c2f8a508eda870fd3cb16f8a xemacs-packages/prog-modes
+b06a40feda551ac189ed05e6d17fc7d4dbe87425 xemacs-packages/prog-modes
a4fa5060de96681c204e05aa56c8b6c39d55055f xemacs-packages/ps-print
d0a307d344ea9cf04d68284fcb68be2f7686866a xemacs-packages/ps-print-nomule
3e112e0ce8588d4e0631f32692ae169f19ee4b42 xemacs-packages/psgml
https://bitbucket.org/xemacs/xemacs-packages/commits/2d49d247d335/
Changeset: 2d49d247d335
User: Norbert Koch
Date: 2013-05-07 10:24:34
Summary: XEmacs Package Release
Affected #: 1 file
diff -r 067d976a9cb64e25be861ea528e165dde85af516 -r 2d49d247d335e19ccbf92f960bbfc91a202abc75 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-05-07 Norbert Koch <viteno(a)xemacs.org>
+
+ * Packages released: cc-mode.
+
2013-04-17 Norbert Koch <viteno(a)xemacs.org>
* Packages released: cc-mode, hyperbole, prog-modes.
https://bitbucket.org/xemacs/xemacs-packages/commits/b7070eeaec80/
Changeset: b7070eeaec80
User: Norbert Koch
Date: 2013-05-07 10:29:44
Summary: pre-release cc-mode 1.67
Affected #: 1 file
Diff not available.
Repository URL: https://bitbucket.org/xemacs/xemacs-packages/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/prog-modes: 2 new changesets
11 years, 7 months
Bitbucket
2 new commits in prog-modes:
https://bitbucket.org/xemacs/prog-modes/commits/c6e49934b88f/
Changeset: c6e49934b88f
User: Norbert Koch
Date: 2013-04-17 22:11:40
Summary: XEmacs Package Release 2.29
Affected #: 2 files
diff -r 226ae620b7169243c2f8a508eda870fd3cb16f8a -r c6e49934b88fd0c71e1ae3c9c9c30cf027378314 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-17 Norbert Koch <viteno(a)xemacs.org>
+
+ * Makefile (VERSION): XEmacs package 2.29 released.
+
2013-04-14 Mats Lidell <matsl(a)xemacs.org>
* Makefile (REQUIRES): Added gnus and w3 for new go-mode.
diff -r 226ae620b7169243c2f8a508eda870fd3cb16f8a -r c6e49934b88fd0c71e1ae3c9c9c30cf027378314 Makefile
--- a/Makefile
+++ b/Makefile
@@ -17,7 +17,7 @@
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
-VERSION = 2.28
+VERSION = 2.29
AUTHOR_VERSION =
MAINTAINER = XEmacs Development Team <xemacs-beta(a)xemacs.org>
PACKAGE = prog-modes
https://bitbucket.org/xemacs/prog-modes/commits/b06a40feda55/
Changeset: b06a40feda55
User: Norbert Koch
Date: 2013-04-17 22:11:40
Summary: Added tag prog-modes-2_29 for changeset c6e49934b88f
Affected #: 1 file
diff -r c6e49934b88fd0c71e1ae3c9c9c30cf027378314 -r b06a40feda551ac189ed05e6d17fc7d4dbe87425 .hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -151,3 +151,4 @@
367ebc30d2921dbb5f56367f8febbdfb7828489b prog-modes-2_26
dddf809f0baae66ff68e9e72208451080815bc54 prog-modes-2_27
61078f98b5df3468c990bc36944d11a1ebd305f0 prog-modes-2_28
+c6e49934b88fd0c71e1ae3c9c9c30cf027378314 prog-modes-2_29
Repository URL: https://bitbucket.org/xemacs/prog-modes/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/hyperbole: 2 new changesets
11 years, 7 months
Bitbucket
2 new commits in hyperbole:
https://bitbucket.org/xemacs/hyperbole/commits/5ff2c76eb344/
Changeset: 5ff2c76eb344
User: Norbert Koch
Date: 2013-04-17 22:11:32
Summary: XEmacs Package Release 1.19
Affected #: 2 files
diff -r 341eb618abad9807a26e6cb7364b73be406bf5c6 -r 5ff2c76eb34451a4c891e14b5b5a7b1936411ccc ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-17 Norbert Koch <viteno(a)xemacs.org>
+
+ * Makefile (VERSION): XEmacs package 1.19 released.
+
2013-04-14 Mats Lidell <matsl(a)xemacs.org>
* Synced with FSF version 5.0.4
diff -r 341eb618abad9807a26e6cb7364b73be406bf5c6 -r 5ff2c76eb34451a4c891e14b5b5a7b1936411ccc Makefile
--- a/Makefile
+++ b/Makefile
@@ -19,7 +19,7 @@
# This XEmacs package contains independent single file lisp packages
-VERSION = 1.18
+VERSION = 1.19
AUTHOR_VERSION = 5.0.3
MAINTAINER = Mats Lidell <matsl(a)xemacs.org>
PACKAGE = hyperbole
https://bitbucket.org/xemacs/hyperbole/commits/9f51888f52b6/
Changeset: 9f51888f52b6
User: Norbert Koch
Date: 2013-04-17 22:11:32
Summary: Added tag hyperbole-1_19 for changeset 5ff2c76eb344
Affected #: 1 file
diff -r 5ff2c76eb34451a4c891e14b5b5a7b1936411ccc -r 9f51888f52b6e2906e550f6b93a7fe861d5efe30 .hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -26,3 +26,4 @@
31dbd19bf8ec0760b6f06911ea9e7d23fd4ba994 sumo-2006-12-21
5c4b5c09320b8616488168fb6fcafcd9143a51df sumo-2006-05-10
da46bdc9f751e838779c7365e1cb6095a413b4ee hyperbole-1_18
+5ff2c76eb34451a4c891e14b5b5a7b1936411ccc hyperbole-1_19
Repository URL: https://bitbucket.org/xemacs/hyperbole/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/cc-mode: 5 new changesets
11 years, 7 months
Bitbucket
5 new commits in cc-mode:
https://bitbucket.org/xemacs/cc-mode/commits/6a893cdd1a2b/
Changeset: 6a893cdd1a2b
User: Norbert Koch
Date: 2013-04-17 22:11:17
Summary: XEmacs Package Release 1.66
Affected #: 2 files
diff -r 595d627b2433db1d3b428d20902f06e51c4b7dda -r 6a893cdd1a2b8787b68cea7360af495d6d80bab3 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-17 Norbert Koch <viteno(a)xemacs.org>
+
+ * Makefile (VERSION): XEmacs package 1.66 released.
+
2013-04-04 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.65 released.
diff -r 595d627b2433db1d3b428d20902f06e51c4b7dda -r 6a893cdd1a2b8787b68cea7360af495d6d80bab3 Makefile
--- a/Makefile
+++ b/Makefile
@@ -17,7 +17,7 @@
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
-VERSION = 1.65
+VERSION = 1.66
AUTHOR_VERSION = 5.32.2
MAINTAINER = Alan Mackenzie <bug-cc-mode(a)gnu.org>
PACKAGE = cc-mode
https://bitbucket.org/xemacs/cc-mode/commits/e2709e81b983/
Changeset: e2709e81b983
User: Norbert Koch
Date: 2013-04-17 22:11:17
Summary: Added tag cc-mode-1_66 for changeset 6a893cdd1a2b
Affected #: 1 file
diff -r 6a893cdd1a2b8787b68cea7360af495d6d80bab3 -r e2709e81b9832c39915c021eaca9cf6f259a85c5 .hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -97,3 +97,4 @@
b855e452c23959bb9efcd397f3739ba11ad97718 cc-mode-1_63
72acccbc8a915392dd763ba2f8fc8495707caa83 cc-mode-1_64
338aead9878cc6971607a6bfa1246bec00eed544 cc-mode-1_65
+6a893cdd1a2b8787b68cea7360af495d6d80bab3 cc-mode-1_66
https://bitbucket.org/xemacs/cc-mode/commits/fc3861c0a601/
Changeset: fc3861c0a601
User: Norbert Koch
Date: 2013-05-07 10:23:26
Summary: update and merge cc-mode
Affected #: 19 files
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,15 +1,109 @@
+2013-05-03 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * Patch release 5.32.5
+
+ * ChangeLog: Update for patch releases 5.32.3 and 5.32.5.
+
+ * cc-defs.el (c-version): Increment to 5.32.5.
+
+ * *.el, cc-mode.texi: Add 2012 and 2013 to copyright notices.
+
+2013-05-02 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Eliminate variable c-standard-font-lock-fontify-region-function.
+ * cc-mode.el (c-standard-font-lock-fontify-region-function): Remove.
+ (c-font-lock-fontify-region, c-after-font-lock-init): Adapt.
+
+2013-04-30 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Handle arbitrarily long C++ member initialisation lists. Test files.
+ * tests/member-init-1.cc: Remove erroneous code which clashes with
+ this change.
+ * tests/member-init-1.res: Recreated.
+ * tests/class-31.cc: Renamed from member-9.cc; replace a
+ constructor with a member init list by a class with inheritance.
+ * tests/class-31.res: Renamed from member-9.res and recreated.
+
+2013-04-30 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Handle arbitrarily long C++ member initialisation lists.
+ Made necessary by change 2012-02-26-ell-m, where a search limit of
+ 500 was introduced.
+
+ * cc-engine.el (c-back-over-member-initializers): new function.
+ (c-guess-basic-syntax): New CASE 5R (extracted from 5B) to handle
+ (most) member init lists.
+
2013-04-17 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.66 released.
+2013-04-15 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct the placement of c-cpp-delimiters when there're #s not at col 0.
+ * cc-langs.el (c-anchored-cpp-prefix): Reformulate and place a
+ submatch around the #.
+ * cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Start a search
+ at BOL. Put the c-cpp-delimiter category text propertiy on the #,
+ not BOL.
+
+2013-04-15 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Reformulate java imenu-generic-expression. Contributed by Filipp Gunbin.
+ The old expression contained ill formed regexps.
+
+ * cc-menus.el (cc-imenu-java-ellipsis-regexp)
+ (cc-imenu-java-type-spec-regexp, cc-imenu-java-comment-regexp)
+ (cc-imenu-java-method-arg-regexp): New defconsts.
+ (cc-imenu-java-build-type-args-regex): New defun.
+ (cc-imenu-java-generic-expression): Fixed, to remove "ambiguous"
+ handling of spaces in the regexp.
+
2013-04-04 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.65 released.
+2013-04-03 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Handle `parse-partial-sexp' landing inside a comment opener.
+ Also adapt to the new values of element 7 of a parse state.
+
+ * cc-engine.el (c-state-pp-to-literal): New optional parameter
+ `not-in-delimiter'. Handle being inside comment opener.
+ (c-invalidate-state-cache-1): Reckon with an extra "invalid"
+ character in case we're typing a '*' after a '/'.
+ (c-literal-limits): Handle the awkward "not-in-delimiter" cond arm
+ instead by passing the parameter to c-state-pp-to-literal.
+
+ * cc-fonts.el (c-font-lock-doc-comments): New handling for elt. 7
+ of a parse state.
+
2013-03-06 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.64 released.
+2013-03-06 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct the position of point in some line-up functions.
+ * cc-align.el (c-lineup-whitesmith-in-block, c-lineup-assignments)
+ (c-lineup-gcc-asm-reg ): take position of point at column 0 rather
+ than at a random place in the line.
+ * cc-mode.texi (Custom Line-Up): State explicitly that point
+ starts at a random position in the line being indented.
+
+2013-03-04 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Replace `last-command-event' by `last-command-char' in XEmacs.
+ * cc-defs.el (c-last-command-char): New macro.
+ * cc-align.el (c-semi&comma-inside-parenlist)
+ (c-semi&comma-no-newlines-before-nonblanks)
+ (c-semi&comma-no-newlines-for-oneline-inliners): Use the new macro
+ in place of `last-command-event'.
+ * cc-cmds.el (c-electric-pound, c-electric-brace)
+ (c-electric-slash, c-electric-semi&comma, c-electric-lt-gt)
+ (c-electric-paren, c-electric-continued-statement): Use the new
+ macro in place of `last-command-event'.
+
2013-02-08 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.63 released.
@@ -30,50 +124,299 @@
* Makefile (VERSION): XEmacs package 1.62 released.
+2013-02-02 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix bug in the state cache mechanism. Remove 'BOD "strategy". Refactor.
+ * cc-engine.el (c-get-fallback-scan-pos): Remove.
+ (c-parse-state-get-strategy): Don't return 'BOD any more.
+ (c-append-lower-brace-pair-to-state-cache): Extra parameter HERE
+ instead of narrowing. Widen to top of buffer before searching
+ backwards for a brace pair.
+ (c-state-push-any-brace-pair): Add HERE parameter to function
+ call.
+ (c-append-to-state-cache): Extra parameter HERE in place of
+ narrowing. Narrow to parameter HERE, in place of being called
+ narrowed.
+ (c-remove-stale-state-cache): Extra parameter HERE in place of
+ narrowing. Check there's an open brace in the cache before
+ searching for its match.
+ (c-invalidate-state-cache-1): Add HERE parameter to function call.
+ (c-parse-state-1): Don't narrow here for 'forward strategy,
+ instead passing extra parameter HERE to several functions. Remove
+ 'BOD strategy.
+
+2013-01-29 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Amend to fontify /regexp/s in actions correctly.
+ * cc-awk.el (c-awk-harmless-char-re, c-awk-harmless-string*-re)
+ (c-awk-harmless-string*-here-re): braces, parens and semicolons
+ are no longer included.
+ (c-awk-harmless-line-char-re, c-awk-harmless-line-string*-re):
+ What used to be these variables without "-line" in the name.
+ (c-awk-neutral-re): { is no longer neutral. Escaped newlines now
+ are.
+ (c-awk-non-arith-op-bra-re): Now also matches {.
+ (c-awk-pre-exp-alphanum-kwd-re): New regexp to match "print",
+ "return", and "case".
+ (c-awk-kwd-regexp-sign-re): New, to match "print", etc., followed
+ by /.
+ (c-awk-syntax-tablify-/): Check special cases "print /re/", etc.
+ (c-awk-set-syntax-table-properties): Extend FSM to handle
+ {,},(,),;.
+
+ awk-face-2.awk, awk-face-2.face: New test files for /regexp/s.
+
2013-01-27 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.60 released.
+2013-01-25 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ AWK Mode: Fix indentation bug at top level.
+ * cc-engine.el (c-guess-basic-syntax): Move CASE 5P to just before
+ CASE 5D.
+ * awk-top-1.awk, awk-top-1.res: Add an extra test for this.
+
+2013-01-23 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix a bug in the state cache mechanism. Refactor this a bit.
+
+ * cc-engine.el (c-parse-state-get-strategy): Remove the
+ `cache-pos' element from the return value.
+ (c-append-lower-brace-pair-to-state-cache): "Narrow" to end of
+ buffer to enable proper searching from beyond HERE. Amend the
+ test for detecting the sought brace pair. Amend the value written
+ to the "brace desert cache" when the brace isn't found.
+ (c-remove-stale-state-cache): Rename `good-pos' to `start-point',
+ and several other variables analogously.
+ (c-remove-stale-state-cache-backwards): Change `cache-pos' from a
+ parameter to a locally calculated variable.
+ (c-parse-state-1): Change the calling conventions to the two
+ defuns involving `cache-pos'.
+
+2013-01-17 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix bugs in the state cache. Enhance a debugging mechanism.
+
+ * cc-engine.el (c-state-old-cpp-beg-marker)
+ (c-state-old-cpp-end-marker): New variables.
+ (c-parse-state-get-strategy): Don't use "brace at column zero"
+ strategy for C++.
+ (c-append-lower-brace-pair-to-state-cache): Repair algorithm.
+ Start a backward search for "}" definitively outside CPP
+ constructs.
+ (c-remove-stale-state-cache): Inform the caller of a need to
+ search back for a brace pair in certain circumstances.
+ (c-state-maybe-marker): New macro.
+ (c-parse-state): Reuse markers when appropriate.
+ (c-parse-state-point): New variable.
+ (c-record-parse-state-state): Record old parse state with
+ `copy-tree'. Record previous value of point.
+ (c-replay-parse-state-state): Replay markers more correctly.
+ (c-debug-parse-state-double-cons): New debugging function.
+ (c-debug-parse-state): Call the above new function.
+ (c-toggle-parse-state-debug): Output a confirmatory message.
+
+ * cc-mode.el (c-before-change, c-after-change): Call
+ c-invalidate-state-cache from `c-before-change' instead of
+ `c-after-change'.
+
2012-12-28 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.59 released.
+2012-12-23 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Speed up fontification where there's large brace blocks.
+ * cc-fonts.el (c-font-lock-enclosing-decls): Add a limit to a call
+ of c-beginning-of-decl-1.
+
2012-12-10 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.58 released.
+2012-12-09 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Make CC Mode not hang when _some_ lines end in CRLF.
+ * cc-engine.el (c-backward-comments): Add code to work around
+ `forward-comment' not recognizing ^M as whitespace.
+
2012-09-11 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.57 released.
+2012-09-09 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct the handling of two c-state-cache state variables.
+ * cc-engine.el (c-state-cache-init): Initialise
+ c-state-semi-nonlit-pos-cache\(-limit\)? properly.
+ (c-record-parse-state-state): record
+ c-state-semi-nonlit-pos-cache\(-limit\)?.
+
2012-09-03 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.56 released.
+2012-08-19 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ AWK Mode: make auto-newline work when there's "==" in the pattern.
+ * cc-cmds.el (c-point-syntax): Handle virtual semicolons
+ correctly.
+ * cc-engine.el (c-guess-basic-syntax CASE 5A.3): Test more
+ rigorously for "=" token.
+
+2012-05-05 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * Patch release 5.32.3
+
+ * cc-defs.el (c-version): Increment to 5.32.3.
+
+ * *.el, cc-mode.texi: Add 2012 to copyright notices.
+
2012-04-23 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.55 released.
+2012-04-22 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix erroneous commit.
+
+2012-04-21 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Adding a ) can hide the resulting (..) from searches. Fix it.
+
+ * cc-engine (c-append-lower-brace-pair-to-state-cache): Bound the
+ backward search to the position of the existing (.
+
2012-04-16 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.54 released.
+2012-04-15 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Ensure searching for keywords is case sensitive.
+
+ * cc-cmds.el (c-electric-brace, c-electric-lt-gt)
+ (c-electric-paren c-beginning-of-defun, c-end-of-defun)
+ (c-defun-name, c-mark-function c-cpp-define-name)
+ (c-comment-indent, c-scan-conditionals c-indent-defun)
+ (c-context-line-break): bind case-fold-search to nil.
+
+ * cc-mode.el (c-font-lock-fontify-region): bind case-fold-search
+ to nil.
+
+2012-04-11 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Make imenu work again for Objective C Mode.
+ * cc-menus.el (cc-imenu-objc-generic-expression): Correct the
+ *-index values, these having been disturbed by a previous change
+ in 2011-08.
+
+2012-04-08 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct two search limits in c-before-change-check_<>-operators.
+ * cc-engine.el (c-before-change-check-<>-operators): Make the
+ correction.
+
+ * cc-mode.texi (c-offsets-alist): Correct a typo.
+
2012-03-19 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.53 released.
+2012-03-16 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Further optimise the handling of large macros.
+
+ * cc-engine.el (c-crosses-statement-barrier-p): Use a limit to a
+ call of `c-literal-limits'.
+ (c-determine-+ve-limit): New function.
+ (c-at-macro-vsemi-p): Move `c-in-literal' to the bottom of an `and'.
+ (c-guess-basic-syntax): In macros, restrict a search limit to
+ 2000. In CASE 5B, restrict a search limit to 500.
+ (c-just-after-func-arglist-p): Obviouly wrong `or' -> `and'.
+
+ * cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Restrict
+ macro bounds to +-500 from after-change's BEG END.
+
+2012-03-08 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * cc-cmds.el (c-mark-defun): Leave a mark, and extend region when
+ command is repeated.
+
2012-03-06 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.52 released.
+2012-03-02 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Depessimize the handling of very large macros.
+
+ * cc-engine.el (c-macro-cache, c-macro-cache-start-pos):
+ (c-macro-cache-syntactic): New variables to implement a one
+ element macro cache.
+ (c-invalidate-macro-cache): New function.
+ (c-beginning-of-macro, c-end-of-macro, c-syntactic-end-of-macro):
+ Adapt to use the new cache.
+ (c-state-safe-place): Use better the cache of safe positions.
+ (c-state-semi-nonlit-pos-cache)
+ (c-state-semi-nonlit-pos-cache-limit): New variables for...
+ (c-state-semi-safe-place): New function. Here, in a macro is
+ "safe".
+ (c-invalidate-state-cache-1): New stuff for
+ c-state-semi-safe-place.
+ (c-in-literal, c-literal-limits, c-determine-limit-get-base): Use
+ c-state-semi-safe-place.
+
+ * cc-langs.el (c-get-state-before-change-functions): Add
+ c-invalidate-macro-cache to the C, C++, Obj entries.
+
+2012-03-01 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Optimise macro handling with a 1 element cache of beginning and
+ end. Make the default of c-macro-names-with-semicolon nil. See
+ 2012-03-02 for details.
+
+2012-02-29 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Optimise c-state-safe-place. See 2012-03-02 for details.
+
2012-02-14 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.51 released.
+2012-02-13 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix a loop in c-set-fl-decl-start.
+ * cc-engine.el (c-set-fl-decl-start): Add a check that
+ c-backward-syntactic-ws actually moves backwards.
+
+2012-02-12 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix infinite loop with long macros.
+ * cc-engine.el (c-state-safe-place): Handle macros properly.
+
2012-02-09 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.50 released.
+2012-02-07 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix spurious recognition of c-in-knr-argdecl.
+
+ * cc-engine.el (c-in-knr-argdecl): Check for '=' in a putative K&R
+ region.
+
+2012-02-07 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Test for keyword @implementation in a #pragma. This used to
+ loop.
+
+2012-02-07 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * cc-engine.el (c-forward-objc-directive): Prevent looping in
+ "#pragma mark @implementation".
+
2012-01-19 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.49 released.
@@ -82,10 +425,58 @@
* Makefile (VERSION): XEmacs package 1.48 released.
+2012-01-18 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Eliminate sluggishness and hangs in fontification of "semicolon
+ deserts".
+
+ * cc-engine.el (c-state-nonlit-pos-interval): change value 10000
+ -> 3000.
+ (c-state-safe-place): Reformulate so it doesn't stack up an
+ infinite number of wrong entries in c-state-nonlit-pos-cache.
+ (c-determine-limit-get-base, c-determine-limit): New functions to
+ determine backward search limits disregarding literals.
+ (c-find-decl-spots): Amend commenting.
+ (c-cheap-inside-bracelist-p): New function which detects "={".
+
+ * cc-fonts.el (c-make-font-lock-BO-decl-search-function): Give a
+ limit to a backward search.
+ (c-font-lock-declarations): Fix an occurrence of point being
+ undefined. Check additionally for point being in a bracelist or
+ near a macro invocation without a semicolon so as to avoid a
+ fruitless time consuming search for a declarator. Give a more
+ precise search limit for declarators using the new
+ c-determine-limit.
+
+2012-01-17 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct a test to do with C-y:
+ * cc-mode.el (c-after-change): Correct a singular-plural
+ confusion.
+
2012-01-13 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.48 released.
+2012-01-13 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix filling for when filladapt mode is enabled.
+
+ * cc-cmds.el (c-fill-paragraph): In the invocation of
+ c-mask-paragraph, pass in `fill-paragraph' rather than
+ `fill-region-as-paragraph'. (This is a reversion of a previous
+ change.)
+ * cc-mode.el (c-basic-common-init): Make
+ fill-paragraph-handle-comment buffer local and set it to nil.
+
+2012-01-11 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix Emacs bug #10463 - put `widen's around the critical spots.
+
+ * cc-engine.el (c-in-literal, c-literal-limits): put a widen
+ around each invocation of c-state-pp-to-literal. Remove an unused
+ let variable.
+
2012-01-10 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.47 released.
@@ -94,6 +485,104 @@
* Makefile (VERSION): XEmacs package 1.46 released.
+2012-01-08 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Optimise font locking in long enum definitions.
+
+ * cc-fonts.el (c-font-lock-declarations): Add an extra arm to a
+ cond form to handle enums.
+ * cc-langs.el (c-enums-contain-decls): New lang variable.
+ * cc-mode.el (c-font-lock-fontify-region): Correct a typo.
+
+2011-12-24 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Introduce a mechanism to widen the region used in context font
+ locking. Use this to protect declarations from losing their
+ contexts.
+
+ * cc-langs.el (c-before-font-lock-functions): replace
+ c-set-fl-decl-start with c-change-set-fl-decl-start (Renaming).
+ (c-before-context-fontification-functions): new defvar, a list of
+ functions to be run just before context (etc.) font locking.
+
+ * cc-mode.el (c-extend-font-lock-region-for-macros): new,
+ functionality extracted from c-neutralize-syntax-in-and-mark-CPP.
+ (c-in-after-change-fontification): new variable.
+ (c-after-change): Set c-in-after-change-fontification.
+ (c-set-fl-decl-start): Rejig its interface, so it can be called
+ from both after-change and context fontifying.
+ (c-change-set-fl-decl-start, c-context-set-fl-decl-start): new
+ functions.
+ (c-standard-font-lock-fontify-region-function): new variable.
+ (c-font-lock-fontify-region): new function
+
+2011-12-22 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix unstable fontification inside templates.
+
+ * cc-langs.el (c-before-font-lock-functions): newly created from
+ the singular version. The (c c++ objc) entry now additionally has
+ c-set-fl-decl-start. The other languages (apart from AWK) have
+ that as a single entry.
+
+ * cc-fonts.el (c-font-lock-enclosing-decls): The functionality for
+ "local" declarations has been extracted to c-set-fl-decl-start.
+
+ * cc-mode.el: (c-common-init, c-after-change): Changes due to
+ pluralisation of c-before-font-lock-functions.
+ (c-set-fl-decl-start): New function, extraced from
+ c-font-lock-enclosing-decls and enhanced.
+ (top level): Only advise the font-lock change functions when
+ font-lock-extend-after-change-region-function is not defined.
+
+2011-12-20 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Convert some British English spellings to American English.
+
+2011-12-13 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Large brace-block initialisation makes CC Mode slow: Fix. Tidy up
+ and accelerate c-in-literal, etc. by using the c-parse-state
+ routines. Limit backward searching in c-font-lock-enclosing.decl.
+
+ * cc-engine.el (c-state-pp-to-literal): Return the pp-state and
+ literal type in addition to the limits.
+ (c-state-safe-place): New defun, extracted from
+ c-state-literal-at.
+ (c-state-literal-at): Use the above new defun.
+ (c-slow-in-literal, c-fast-in-literal): Removed.
+ (c-in-literal, c-literal-limits): Amended to use
+ c-state-pp-to-literal.
+
+ * cc-fonts.el (c-font-lock-enclosing-decls): Check for being in a
+ literal. Add a limit for backward searching.
+
+ * cc-mode.el (awk-mode): Don't alias c-in-literal to
+ c-slow-in-literal.
+
+2011-12-04 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Add the switch statement to AWK Mode.
+
+ cc-awk (awk-font-lock-keywords): Add "switch", "case", "default"
+ to the keywords regexp.
+
+ cc-langs (c-label-kwds): Let AWK take the same expression as the
+ rest.
+ (c-nonlabel-token-key): Allow string literals for AWK. Refactor
+ for the other modes.
+
+2011-10-22 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix bug #9560, sporadic wrong indentation; improve instrumentation of
+ c-parse-state.
+ * cc-engine.el (c-append-lower-brace-pair-to-state-cache): correct faulty
+ logical expression.
+
+ (c-parse-state-state, c-record-parse-state-state)
+ c-replay-parse-state-state): New defvar/defuns.
+ (c-debug-parse-state): Use new functions.
+
2011-10-18 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.46 released.
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-align.el
--- a/cc-align.el
+++ b/cc-align.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2004- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-awk.el
--- a/cc-awk.el
+++ b/cc-awk.el
@@ -1,7 +1,8 @@
;;; cc-awk.el --- AWK specific code within cc-mode.
;; Copyright (C) 1988, 1994, 1996, 2000, 2001, 2002, 2003, 2004, 2005,
-;; 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
+;; Free Software Foundation, Inc.
;; Author: Alan Mackenzie <acm(a)muc.de> (originally based on awk-mode.el)
;; Maintainer: FSF
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-bytecomp.el
--- a/cc-bytecomp.el
+++ b/cc-bytecomp.el
@@ -1,7 +1,7 @@
;;; cc-bytecomp.el --- compile time setup for proper compilation
;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-;; 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Author: Martin Stjernholm
;; Maintainer: bug-cc-mode(a)gnu.org
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-cmds.el
--- a/cc-cmds.el
+++ b/cc-cmds.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-compat.el
--- a/cc-compat.el
+++ b/cc-compat.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 1998- Martin Stjernholm
;; 1994-1999 Barry A. Warsaw
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-defs.el
--- a/cc-defs.el
+++ b/cc-defs.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
@@ -99,7 +99,7 @@
;;; Variables also used at compile time.
-(defconst c-version "5.32.2"
+(defconst c-version "5.32.5"
"CC Mode version number.")
(defconst c-version-sym (intern c-version))
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-engine.el
--- a/cc-engine.el
+++ b/cc-engine.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2001- Alan Mackenzie
;; 1998- Martin Stjernholm
@@ -6511,6 +6511,52 @@
(c-go-list-forward)
t)))
+(defun c-back-over-member-initializers ()
+ ;; Test whether we are in a C++ member initializer list, and if so, go back
+ ;; to the introducing ":", returning the position of the opening paren of
+ ;; the function's arglist. Otherwise return nil, leaving point unchanged.
+ (let ((here (point))
+ (paren-state (c-parse-state))
+ res)
+
+ (setq res
+ (catch 'done
+ (if (not (c-at-toplevel-p))
+ (progn
+ (while (not (c-at-toplevel-p))
+ (goto-char (c-pull-open-brace paren-state)))
+ (c-backward-syntactic-ws)
+ (when (not (c-simple-skip-symbol-backward))
+ (throw 'done nil))
+ (c-backward-syntactic-ws))
+ (c-backward-syntactic-ws)
+ (when (memq (char-before) '(?\) ?}))
+ (when (not (c-go-list-backward))
+ (throw 'done nil))
+ (c-backward-syntactic-ws))
+ (when (c-simple-skip-symbol-backward)
+ (c-backward-syntactic-ws)))
+
+ (while (eq (char-before) ?,)
+ (backward-char)
+ (c-backward-syntactic-ws)
+
+ (when (not (memq (char-before) '(?\) ?})))
+ (throw 'done nil))
+ (when (not (c-go-list-backward))
+ (throw 'done nil))
+ (c-backward-syntactic-ws)
+ (when (not (c-simple-skip-symbol-backward))
+ (throw 'done nil))
+ (c-backward-syntactic-ws))
+
+ (and
+ (eq (char-before) ?:)
+ (c-just-after-func-arglist-p))))
+
+ (or res (goto-char here))
+ res))
+
;; Handling of large scale constructs like statements and declarations.
@@ -9715,18 +9761,13 @@
;; 2007-11-09)
))))
- ;; CASE 5B: After a function header but before the body (or
- ;; the ending semicolon if there's no body).
+ ;; CASE 5R: Member init list. (Used to be part of CASE 5B.1)
+ ;; Note there is no limit on the backward search here, since member
+ ;; init lists can, in practice, be very large.
((save-excursion
- (when (setq placeholder (c-just-after-func-arglist-p
- (max lim (c-determine-limit 500))))
+ (when (setq placeholder (c-back-over-member-initializers))
(setq tmp-pos (point))))
- (cond
-
- ;; CASE 5B.1: Member init list.
- ((eq (char-after tmp-pos) ?:)
- (if (or (>= tmp-pos indent-point)
- (= (c-point 'bosws) (1+ tmp-pos)))
+ (if (= (c-point 'bosws) (1+ tmp-pos))
(progn
;; There is no preceding member init clause.
;; Indent relative to the beginning of indentation
@@ -9739,6 +9780,23 @@
(c-forward-syntactic-ws)
(c-add-syntax 'member-init-cont (point))))
+ ;; CASE 5B: After a function header but before the body (or
+ ;; the ending semicolon if there's no body).
+ ((save-excursion
+ (when (setq placeholder (c-just-after-func-arglist-p
+ (max lim (c-determine-limit 500))))
+ (setq tmp-pos (point))))
+ (cond
+
+ ;; CASE 5B.1: Member init list.
+ ((eq (char-after tmp-pos) ?:)
+ ;; There is no preceding member init clause.
+ ;; Indent relative to the beginning of indentation
+ ;; for the topmost-intro line that contains the
+ ;; prototype's open paren.
+ (goto-char placeholder)
+ (c-add-syntax 'member-init-intro (c-point 'boi)))
+
;; CASE 5B.2: K&R arg decl intro
((and c-recognize-knr-p
(c-in-knr-argdecl lim))
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-fix.el
--- a/cc-fix.el
+++ b/cc-fix.el
@@ -1,7 +1,7 @@
;;; cc-fix.el --- compatibility library for old (X)Emacs versions
;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006, 2007, 2008,
-;; 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-fonts.el
--- a/cc-fonts.el
+++ b/cc-fonts.el
@@ -1,7 +1,7 @@
;;; cc-fonts.el --- font lock support for CC Mode
;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 2002- Martin Stjernholm
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-guess.el
--- a/cc-guess.el
+++ b/cc-guess.el
@@ -1,7 +1,7 @@
;;; cc-guess.el --- guess indentation values by scanning existing code
;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006, 2007, 2008,
-;; 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Author: 1994-1995 Barry A. Warsaw
;; 2011- Masatake YAMATO
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-langs.el
--- a/cc-langs.el
+++ b/cc-langs.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2002- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-lobotomy.el
--- a/cc-lobotomy.el
+++ b/cc-lobotomy.el
@@ -1,7 +1,7 @@
;;; cc-lobotomy.el --- excise portions of cc-mode's brain... for speed
;; Copyright (C) 1985,1987,1992-2003, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Author: 1995 Barry A. Warsaw
;; Maintainer: Unmaintained
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-menus.el
--- a/cc-menus.el
+++ b/cc-menus.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 1998- Martin Stjernholm
;; 1992-1999 Barry A. Warsaw
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-mode.el
--- a/cc-mode.el
+++ b/cc-mode.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
@@ -1184,9 +1184,6 @@
;; `c-set-fl-decl-start' for the detailed functionality.
(cons (c-set-fl-decl-start beg) end))
-(defvar c-standard-font-lock-fontify-region-function nil
- "Standard value of `font-lock-fontify-region-function'")
-
(defun c-font-lock-fontify-region (beg end &optional verbose)
;; Effectively advice around `font-lock-fontify-region' which extends the
;; region (BEG END), for example, to avoid context fontification chopping
@@ -1211,17 +1208,14 @@
(setq new-region (funcall fn new-beg new-end))
(setq new-beg (car new-region) new-end (cdr new-region)))
c-before-context-fontification-functions))))
- (funcall c-standard-font-lock-fontify-region-function
+ (funcall (default-value 'font-lock-fontify-region-function)
new-beg new-end verbose)))
(defun c-after-font-lock-init ()
;; Put on `font-lock-mode-hook'. This function ensures our after-change
- ;; function will get excuted before the font-lock one. Amongst other
- ;; things.
+ ;; function will get excuted before the font-lock one.
(remove-hook 'after-change-functions 'c-after-change t)
- (add-hook 'after-change-functions 'c-after-change nil t)
- (setq c-standard-font-lock-fontify-region-function
- (default-value 'font-lock-fontify-region-function)))
+ (add-hook 'after-change-functions 'c-after-change nil t))
(defun c-font-lock-init ()
"Set up the font-lock variables for using the font-lock support in CC Mode.
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-mode.texi
--- a/cc-mode.texi
+++ b/cc-mode.texi
@@ -158,8 +158,8 @@
@copying
Copyright @copyright{} 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-Foundation, Inc.
+2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free
+Software Foundation, Inc.
This manual is free documentation; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
@@ -201,7 +201,7 @@
@vskip 0pt plus 1filll
@insertcopying
-This manual was generated from $Revision: 5.265 $ of $RCSfile: cc-mode.texi,v $, which can be
+This manual was generated from $Revision$ of $RCSfile$, which can be
downloaded from
@url{http://cvs.sf.net/viewcvs.py/cc-mode/cc-mode/cc-mode.texi}.
@end titlepage
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-styles.el
--- a/cc-styles.el
+++ b/cc-styles.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2004- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-subword.el
--- a/cc-subword.el
+++ b/cc-subword.el
@@ -1,7 +1,7 @@
;;; cc-subword.el --- Handling capitalized subwords in a nomenclature
-;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
-;; Free Software Foundation, Inc.
+;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
+;; 2013 Free Software Foundation, Inc.
;; Author: Masatake YAMATO
diff -r e2709e81b9832c39915c021eaca9cf6f259a85c5 -r fc3861c0a6014e8609c1d73370e49c27c460ee42 cc-vars.el
--- a/cc-vars.el
+++ b/cc-vars.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2002- Alan Mackenzie
;; 1998- Martin Stjernholm
https://bitbucket.org/xemacs/cc-mode/commits/a0fb9e88becd/
Changeset: a0fb9e88becd
User: Norbert Koch
Date: 2013-05-07 10:24:34
Summary: XEmacs Package Release 1.67
Affected #: 2 files
diff -r fc3861c0a6014e8609c1d73370e49c27c460ee42 -r a0fb9e88becddf22e9e50cbca7009a46106f0cac ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-05-07 Norbert Koch <viteno(a)xemacs.org>
+
+ * Makefile (VERSION): XEmacs package 1.67 released.
+
2013-05-03 Alan Mackenzie <bug-cc-mode(a)gnu.org>
* Patch release 5.32.5
diff -r fc3861c0a6014e8609c1d73370e49c27c460ee42 -r a0fb9e88becddf22e9e50cbca7009a46106f0cac Makefile
--- a/Makefile
+++ b/Makefile
@@ -17,7 +17,7 @@
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
-VERSION = 1.66
+VERSION = 1.67
AUTHOR_VERSION = 5.32.2
MAINTAINER = Alan Mackenzie <bug-cc-mode(a)gnu.org>
PACKAGE = cc-mode
https://bitbucket.org/xemacs/cc-mode/commits/34b16d59ee7d/
Changeset: 34b16d59ee7d
User: Norbert Koch
Date: 2013-05-07 10:24:34
Summary: Added tag cc-mode-1_67 for changeset a0fb9e88becd
Affected #: 1 file
Diff not available.
Repository URL: https://bitbucket.org/xemacs/cc-mode/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/cc-mode: 3 new changesets
11 years, 7 months
Bitbucket
3 new commits in cc-mode:
https://bitbucket.org/xemacs/cc-mode/commits/6da064d17ddf/
Changeset: 6da064d17ddf
User: acm
Date: 2012-05-05 13:03:00
Summary: Add 2012 to copyright notices.
Affected #: 18 files
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-align.el
--- a/cc-align.el
+++ b/cc-align.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2004- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-awk.el
--- a/cc-awk.el
+++ b/cc-awk.el
@@ -1,7 +1,7 @@
;;; cc-awk.el --- AWK specific code within cc-mode.
;; Copyright (C) 1988, 1994, 1996, 2000, 2001, 2002, 2003, 2004, 2005,
-;; 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
;; Author: Alan Mackenzie <acm(a)muc.de> (originally based on awk-mode.el)
;; Maintainer: FSF
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-bytecomp.el
--- a/cc-bytecomp.el
+++ b/cc-bytecomp.el
@@ -1,7 +1,7 @@
;;; cc-bytecomp.el --- compile time setup for proper compilation
;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-;; 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
;; Author: Martin Stjernholm
;; Maintainer: bug-cc-mode(a)gnu.org
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-cmds.el
--- a/cc-cmds.el
+++ b/cc-cmds.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-compat.el
--- a/cc-compat.el
+++ b/cc-compat.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 1998- Martin Stjernholm
;; 1994-1999 Barry A. Warsaw
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-defs.el
--- a/cc-defs.el
+++ b/cc-defs.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
@@ -99,7 +99,7 @@
;;; Variables also used at compile time.
-(defconst c-version "5.32.2"
+(defconst c-version "5.32.3"
"CC Mode version number.")
(defconst c-version-sym (intern c-version))
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-engine.el
--- a/cc-engine.el
+++ b/cc-engine.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2001- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-fix.el
--- a/cc-fix.el
+++ b/cc-fix.el
@@ -1,7 +1,7 @@
;;; cc-fix.el --- compatibility library for old (X)Emacs versions
;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006, 2007, 2008,
-;; 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-fonts.el
--- a/cc-fonts.el
+++ b/cc-fonts.el
@@ -1,7 +1,7 @@
;;; cc-fonts.el --- font lock support for CC Mode
;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 2002- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-guess.el
--- a/cc-guess.el
+++ b/cc-guess.el
@@ -1,7 +1,7 @@
;;; cc-guess.el --- guess indentation values by scanning existing code
;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006, 2007, 2008,
-;; 2009, 2010, 2011 Free Software Foundation, Inc.
+;; 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
;; Author: 1994-1995 Barry A. Warsaw
;; 2011- Masatake YAMATO
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-langs.el
--- a/cc-langs.el
+++ b/cc-langs.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2002- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-lobotomy.el
--- a/cc-lobotomy.el
+++ b/cc-lobotomy.el
@@ -1,7 +1,7 @@
;;; cc-lobotomy.el --- excise portions of cc-mode's brain... for speed
;; Copyright (C) 1985,1987,1992-2003, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Author: 1995 Barry A. Warsaw
;; Maintainer: Unmaintained
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-menus.el
--- a/cc-menus.el
+++ b/cc-menus.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 1998- Martin Stjernholm
;; 1992-1999 Barry A. Warsaw
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-mode.el
--- a/cc-mode.el
+++ b/cc-mode.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-mode.texi
--- a/cc-mode.texi
+++ b/cc-mode.texi
@@ -158,7 +158,7 @@
@copying
Copyright @copyright{} 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software
Foundation, Inc.
This manual is free documentation; you can redistribute it and/or
@@ -201,7 +201,7 @@
@vskip 0pt plus 1filll
@insertcopying
-This manual was generated from $Revision: 5.265 $ of $RCSfile: cc-mode.texi,v $, which can be
+This manual was generated from $Revision$ of $RCSfile$, which can be
downloaded from
@url{http://cvs.sf.net/viewcvs.py/cc-mode/cc-mode/cc-mode.texi}.
@end titlepage
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-styles.el
--- a/cc-styles.el
+++ b/cc-styles.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2004- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-subword.el
--- a/cc-subword.el
+++ b/cc-subword.el
@@ -1,6 +1,6 @@
;;; cc-subword.el --- Handling capitalized subwords in a nomenclature
-;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
;; Free Software Foundation, Inc.
;; Author: Masatake YAMATO
diff -r 193ab093595b962fbfe04dbed42b598d9a0abb3a -r 6da064d17ddf7943d0819e34edff29e1b605df79 cc-vars.el
--- a/cc-vars.el
+++ b/cc-vars.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011 Free Software Foundation, Inc.
+;; 2010, 2011, 2012 Free Software Foundation, Inc.
;; Authors: 2002- Alan Mackenzie
;; 1998- Martin Stjernholm
https://bitbucket.org/xemacs/cc-mode/commits/d9305adbc286/
Changeset: d9305adbc286
User: acm
Date: 2013-05-04 17:45:55
Summary: cc-defs.el (c-version): increment to 5.32.5
*.el, cc-mode.texi. Add 2013 to the copyright statements.
Affected #: 18 files
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-align.el
--- a/cc-align.el
+++ b/cc-align.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2004- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-awk.el
--- a/cc-awk.el
+++ b/cc-awk.el
@@ -1,7 +1,8 @@
;;; cc-awk.el --- AWK specific code within cc-mode.
;; Copyright (C) 1988, 1994, 1996, 2000, 2001, 2002, 2003, 2004, 2005,
-;; 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
+;; Free Software Foundation, Inc.
;; Author: Alan Mackenzie <acm(a)muc.de> (originally based on awk-mode.el)
;; Maintainer: FSF
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-bytecomp.el
--- a/cc-bytecomp.el
+++ b/cc-bytecomp.el
@@ -1,7 +1,7 @@
;;; cc-bytecomp.el --- compile time setup for proper compilation
;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-;; 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Author: Martin Stjernholm
;; Maintainer: bug-cc-mode(a)gnu.org
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-cmds.el
--- a/cc-cmds.el
+++ b/cc-cmds.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-compat.el
--- a/cc-compat.el
+++ b/cc-compat.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 1998- Martin Stjernholm
;; 1994-1999 Barry A. Warsaw
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-defs.el
--- a/cc-defs.el
+++ b/cc-defs.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
@@ -99,7 +99,7 @@
;;; Variables also used at compile time.
-(defconst c-version "5.32.3"
+(defconst c-version "5.32.5"
"CC Mode version number.")
(defconst c-version-sym (intern c-version))
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-engine.el
--- a/cc-engine.el
+++ b/cc-engine.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2001- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-fix.el
--- a/cc-fix.el
+++ b/cc-fix.el
@@ -1,7 +1,7 @@
;;; cc-fix.el --- compatibility library for old (X)Emacs versions
;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006, 2007, 2008,
-;; 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-fonts.el
--- a/cc-fonts.el
+++ b/cc-fonts.el
@@ -1,7 +1,7 @@
;;; cc-fonts.el --- font lock support for CC Mode
;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 2002- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-guess.el
--- a/cc-guess.el
+++ b/cc-guess.el
@@ -1,7 +1,7 @@
;;; cc-guess.el --- guess indentation values by scanning existing code
;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006, 2007, 2008,
-;; 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Author: 1994-1995 Barry A. Warsaw
;; 2011- Masatake YAMATO
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-langs.el
--- a/cc-langs.el
+++ b/cc-langs.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2002- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-lobotomy.el
--- a/cc-lobotomy.el
+++ b/cc-lobotomy.el
@@ -1,7 +1,7 @@
;;; cc-lobotomy.el --- excise portions of cc-mode's brain... for speed
;; Copyright (C) 1985,1987,1992-2003, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Author: 1995 Barry A. Warsaw
;; Maintainer: Unmaintained
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-menus.el
--- a/cc-menus.el
+++ b/cc-menus.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 1998- Martin Stjernholm
;; 1992-1999 Barry A. Warsaw
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-mode.el
--- a/cc-mode.el
+++ b/cc-mode.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2003- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-mode.texi
--- a/cc-mode.texi
+++ b/cc-mode.texi
@@ -158,8 +158,8 @@
@copying
Copyright @copyright{} 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software
-Foundation, Inc.
+2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free
+Software Foundation, Inc.
This manual is free documentation; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-styles.el
--- a/cc-styles.el
+++ b/cc-styles.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2004- Alan Mackenzie
;; 1998- Martin Stjernholm
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-subword.el
--- a/cc-subword.el
+++ b/cc-subword.el
@@ -1,7 +1,7 @@
;;; cc-subword.el --- Handling capitalized subwords in a nomenclature
-;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-;; Free Software Foundation, Inc.
+;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
+;; 2013 Free Software Foundation, Inc.
;; Author: Masatake YAMATO
diff -r 6da064d17ddf7943d0819e34edff29e1b605df79 -r d9305adbc286d0aa78b806b558cb9dafa277be72 cc-vars.el
--- a/cc-vars.el
+++ b/cc-vars.el
@@ -2,7 +2,7 @@
;; Copyright (C) 1985, 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-;; 2010, 2011, 2012 Free Software Foundation, Inc.
+;; 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
;; Authors: 2002- Alan Mackenzie
;; 1998- Martin Stjernholm
https://bitbucket.org/xemacs/cc-mode/commits/2ae380208a4f/
Changeset: 2ae380208a4f
User: acm
Date: 2013-05-04 22:44:01
Summary: ChangeLog: Update for versions 5.32.3 and 5.32.5.
Affected #: 1 file
diff -r d9305adbc286d0aa78b806b558cb9dafa277be72 -r 2ae380208a4fd93096d8d86a8f9796b183932b59 ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,11 +1,105 @@
+2013-05-03 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * Patch release 5.32.5
+
+ * ChangeLog: Update for patch releases 5.32.3 and 5.32.5.
+
+ * cc-defs.el (c-version): Increment to 5.32.5.
+
+ * *.el, cc-mode.texi: Add 2012 and 2013 to copyright notices.
+
+2013-05-02 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Eliminate variable c-standard-font-lock-fontify-region-function.
+ * cc-mode.el (c-standard-font-lock-fontify-region-function): Remove.
+ (c-font-lock-fontify-region, c-after-font-lock-init): Adapt.
+
+2013-04-30 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Handle arbitrarily long C++ member initialisation lists. Test files.
+ * tests/member-init-1.cc: Remove erroneous code which clashes with
+ this change.
+ * tests/member-init-1.res: Recreated.
+ * tests/class-31.cc: Renamed from member-9.cc; replace a
+ constructor with a member init list by a class with inheritance.
+ * tests/class-31.res: Renamed from member-9.res and recreated.
+
+2013-04-30 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Handle arbitrarily long C++ member initialisation lists.
+ Made necessary by change 2012-02-26-ell-m, where a search limit of
+ 500 was introduced.
+
+ * cc-engine.el (c-back-over-member-initializers): new function.
+ (c-guess-basic-syntax): New CASE 5R (extracted from 5B) to handle
+ (most) member init lists.
+
+2013-04-15 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct the placement of c-cpp-delimiters when there're #s not at col 0.
+ * cc-langs.el (c-anchored-cpp-prefix): Reformulate and place a
+ submatch around the #.
+ * cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Start a search
+ at BOL. Put the c-cpp-delimiter category text propertiy on the #,
+ not BOL.
+
+2013-04-15 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Reformulate java imenu-generic-expression. Contributed by Filipp Gunbin.
+ The old expression contained ill formed regexps.
+
+ * cc-menus.el (cc-imenu-java-ellipsis-regexp)
+ (cc-imenu-java-type-spec-regexp, cc-imenu-java-comment-regexp)
+ (cc-imenu-java-method-arg-regexp): New defconsts.
+ (cc-imenu-java-build-type-args-regex): New defun.
+ (cc-imenu-java-generic-expression): Fixed, to remove "ambiguous"
+ handling of spaces in the regexp.
+
2013-04-04 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.65 released.
+2013-04-03 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Handle `parse-partial-sexp' landing inside a comment opener.
+ Also adapt to the new values of element 7 of a parse state.
+
+ * cc-engine.el (c-state-pp-to-literal): New optional parameter
+ `not-in-delimiter'. Handle being inside comment opener.
+ (c-invalidate-state-cache-1): Reckon with an extra "invalid"
+ character in case we're typing a '*' after a '/'.
+ (c-literal-limits): Handle the awkward "not-in-delimiter" cond arm
+ instead by passing the parameter to c-state-pp-to-literal.
+
+ * cc-fonts.el (c-font-lock-doc-comments): New handling for elt. 7
+ of a parse state.
+
2013-03-06 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.64 released.
+2013-03-06 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct the position of point in some line-up functions.
+ * cc-align.el (c-lineup-whitesmith-in-block, c-lineup-assignments)
+ (c-lineup-gcc-asm-reg ): take position of point at column 0 rather
+ than at a random place in the line.
+ * cc-mode.texi (Custom Line-Up): State explicitly that point
+ starts at a random position in the line being indented.
+
+2013-03-04 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Replace `last-command-event' by `last-command-char' in XEmacs.
+ * cc-defs.el (c-last-command-char): New macro.
+ * cc-align.el (c-semi&comma-inside-parenlist)
+ (c-semi&comma-no-newlines-before-nonblanks)
+ (c-semi&comma-no-newlines-for-oneline-inliners): Use the new macro
+ in place of `last-command-event'.
+ * cc-cmds.el (c-electric-pound, c-electric-brace)
+ (c-electric-slash, c-electric-semi&comma, c-electric-lt-gt)
+ (c-electric-paren, c-electric-continued-statement): Use the new
+ macro in place of `last-command-event'.
+
2013-02-08 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.63 released.
@@ -26,50 +120,299 @@
* Makefile (VERSION): XEmacs package 1.62 released.
+2013-02-02 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix bug in the state cache mechanism. Remove 'BOD "strategy". Refactor.
+ * cc-engine.el (c-get-fallback-scan-pos): Remove.
+ (c-parse-state-get-strategy): Don't return 'BOD any more.
+ (c-append-lower-brace-pair-to-state-cache): Extra parameter HERE
+ instead of narrowing. Widen to top of buffer before searching
+ backwards for a brace pair.
+ (c-state-push-any-brace-pair): Add HERE parameter to function
+ call.
+ (c-append-to-state-cache): Extra parameter HERE in place of
+ narrowing. Narrow to parameter HERE, in place of being called
+ narrowed.
+ (c-remove-stale-state-cache): Extra parameter HERE in place of
+ narrowing. Check there's an open brace in the cache before
+ searching for its match.
+ (c-invalidate-state-cache-1): Add HERE parameter to function call.
+ (c-parse-state-1): Don't narrow here for 'forward strategy,
+ instead passing extra parameter HERE to several functions. Remove
+ 'BOD strategy.
+
+2013-01-29 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Amend to fontify /regexp/s in actions correctly.
+ * cc-awk.el (c-awk-harmless-char-re, c-awk-harmless-string*-re)
+ (c-awk-harmless-string*-here-re): braces, parens and semicolons
+ are no longer included.
+ (c-awk-harmless-line-char-re, c-awk-harmless-line-string*-re):
+ What used to be these variables without "-line" in the name.
+ (c-awk-neutral-re): { is no longer neutral. Escaped newlines now
+ are.
+ (c-awk-non-arith-op-bra-re): Now also matches {.
+ (c-awk-pre-exp-alphanum-kwd-re): New regexp to match "print",
+ "return", and "case".
+ (c-awk-kwd-regexp-sign-re): New, to match "print", etc., followed
+ by /.
+ (c-awk-syntax-tablify-/): Check special cases "print /re/", etc.
+ (c-awk-set-syntax-table-properties): Extend FSM to handle
+ {,},(,),;.
+
+ awk-face-2.awk, awk-face-2.face: New test files for /regexp/s.
+
2013-01-27 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.60 released.
+2013-01-25 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ AWK Mode: Fix indentation bug at top level.
+ * cc-engine.el (c-guess-basic-syntax): Move CASE 5P to just before
+ CASE 5D.
+ * awk-top-1.awk, awk-top-1.res: Add an extra test for this.
+
+2013-01-23 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix a bug in the state cache mechanism. Refactor this a bit.
+
+ * cc-engine.el (c-parse-state-get-strategy): Remove the
+ `cache-pos' element from the return value.
+ (c-append-lower-brace-pair-to-state-cache): "Narrow" to end of
+ buffer to enable proper searching from beyond HERE. Amend the
+ test for detecting the sought brace pair. Amend the value written
+ to the "brace desert cache" when the brace isn't found.
+ (c-remove-stale-state-cache): Rename `good-pos' to `start-point',
+ and several other variables analogously.
+ (c-remove-stale-state-cache-backwards): Change `cache-pos' from a
+ parameter to a locally calculated variable.
+ (c-parse-state-1): Change the calling conventions to the two
+ defuns involving `cache-pos'.
+
+2013-01-17 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix bugs in the state cache. Enhance a debugging mechanism.
+
+ * cc-engine.el (c-state-old-cpp-beg-marker)
+ (c-state-old-cpp-end-marker): New variables.
+ (c-parse-state-get-strategy): Don't use "brace at column zero"
+ strategy for C++.
+ (c-append-lower-brace-pair-to-state-cache): Repair algorithm.
+ Start a backward search for "}" definitively outside CPP
+ constructs.
+ (c-remove-stale-state-cache): Inform the caller of a need to
+ search back for a brace pair in certain circumstances.
+ (c-state-maybe-marker): New macro.
+ (c-parse-state): Reuse markers when appropriate.
+ (c-parse-state-point): New variable.
+ (c-record-parse-state-state): Record old parse state with
+ `copy-tree'. Record previous value of point.
+ (c-replay-parse-state-state): Replay markers more correctly.
+ (c-debug-parse-state-double-cons): New debugging function.
+ (c-debug-parse-state): Call the above new function.
+ (c-toggle-parse-state-debug): Output a confirmatory message.
+
+ * cc-mode.el (c-before-change, c-after-change): Call
+ c-invalidate-state-cache from `c-before-change' instead of
+ `c-after-change'.
+
2012-12-28 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.59 released.
+2012-12-23 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Speed up fontification where there's large brace blocks.
+ * cc-fonts.el (c-font-lock-enclosing-decls): Add a limit to a call
+ of c-beginning-of-decl-1.
+
2012-12-10 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.58 released.
+2012-12-09 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Make CC Mode not hang when _some_ lines end in CRLF.
+ * cc-engine.el (c-backward-comments): Add code to work around
+ `forward-comment' not recognizing ^M as whitespace.
+
2012-09-11 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.57 released.
+2012-09-09 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct the handling of two c-state-cache state variables.
+ * cc-engine.el (c-state-cache-init): Initialise
+ c-state-semi-nonlit-pos-cache\(-limit\)? properly.
+ (c-record-parse-state-state): record
+ c-state-semi-nonlit-pos-cache\(-limit\)?.
+
2012-09-03 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.56 released.
+2012-08-19 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ AWK Mode: make auto-newline work when there's "==" in the pattern.
+ * cc-cmds.el (c-point-syntax): Handle virtual semicolons
+ correctly.
+ * cc-engine.el (c-guess-basic-syntax CASE 5A.3): Test more
+ rigorously for "=" token.
+
+2012-05-05 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * Patch release 5.32.3
+
+ * cc-defs.el (c-version): Increment to 5.32.3.
+
+ * *.el, cc-mode.texi: Add 2012 to copyright notices.
+
2012-04-23 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.55 released.
+2012-04-22 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix erroneous commit.
+
+2012-04-21 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Adding a ) can hide the resulting (..) from searches. Fix it.
+
+ * cc-engine (c-append-lower-brace-pair-to-state-cache): Bound the
+ backward search to the position of the existing (.
+
2012-04-16 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.54 released.
+2012-04-15 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Ensure searching for keywords is case sensitive.
+
+ * cc-cmds.el (c-electric-brace, c-electric-lt-gt)
+ (c-electric-paren c-beginning-of-defun, c-end-of-defun)
+ (c-defun-name, c-mark-function c-cpp-define-name)
+ (c-comment-indent, c-scan-conditionals c-indent-defun)
+ (c-context-line-break): bind case-fold-search to nil.
+
+ * cc-mode.el (c-font-lock-fontify-region): bind case-fold-search
+ to nil.
+
+2012-04-11 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Make imenu work again for Objective C Mode.
+ * cc-menus.el (cc-imenu-objc-generic-expression): Correct the
+ *-index values, these having been disturbed by a previous change
+ in 2011-08.
+
+2012-04-08 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct two search limits in c-before-change-check_<>-operators.
+ * cc-engine.el (c-before-change-check-<>-operators): Make the
+ correction.
+
+ * cc-mode.texi (c-offsets-alist): Correct a typo.
+
2012-03-19 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.53 released.
+2012-03-16 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Further optimise the handling of large macros.
+
+ * cc-engine.el (c-crosses-statement-barrier-p): Use a limit to a
+ call of `c-literal-limits'.
+ (c-determine-+ve-limit): New function.
+ (c-at-macro-vsemi-p): Move `c-in-literal' to the bottom of an `and'.
+ (c-guess-basic-syntax): In macros, restrict a search limit to
+ 2000. In CASE 5B, restrict a search limit to 500.
+ (c-just-after-func-arglist-p): Obviouly wrong `or' -> `and'.
+
+ * cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Restrict
+ macro bounds to +-500 from after-change's BEG END.
+
+2012-03-08 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * cc-cmds.el (c-mark-defun): Leave a mark, and extend region when
+ command is repeated.
+
2012-03-06 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.52 released.
+2012-03-02 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Depessimize the handling of very large macros.
+
+ * cc-engine.el (c-macro-cache, c-macro-cache-start-pos):
+ (c-macro-cache-syntactic): New variables to implement a one
+ element macro cache.
+ (c-invalidate-macro-cache): New function.
+ (c-beginning-of-macro, c-end-of-macro, c-syntactic-end-of-macro):
+ Adapt to use the new cache.
+ (c-state-safe-place): Use better the cache of safe positions.
+ (c-state-semi-nonlit-pos-cache)
+ (c-state-semi-nonlit-pos-cache-limit): New variables for...
+ (c-state-semi-safe-place): New function. Here, in a macro is
+ "safe".
+ (c-invalidate-state-cache-1): New stuff for
+ c-state-semi-safe-place.
+ (c-in-literal, c-literal-limits, c-determine-limit-get-base): Use
+ c-state-semi-safe-place.
+
+ * cc-langs.el (c-get-state-before-change-functions): Add
+ c-invalidate-macro-cache to the C, C++, Obj entries.
+
+2012-03-01 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Optimise macro handling with a 1 element cache of beginning and
+ end. Make the default of c-macro-names-with-semicolon nil. See
+ 2012-03-02 for details.
+
+2012-02-29 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Optimise c-state-safe-place. See 2012-03-02 for details.
+
2012-02-14 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.51 released.
+2012-02-13 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix a loop in c-set-fl-decl-start.
+ * cc-engine.el (c-set-fl-decl-start): Add a check that
+ c-backward-syntactic-ws actually moves backwards.
+
+2012-02-12 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix infinite loop with long macros.
+ * cc-engine.el (c-state-safe-place): Handle macros properly.
+
2012-02-09 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.50 released.
+2012-02-07 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix spurious recognition of c-in-knr-argdecl.
+
+ * cc-engine.el (c-in-knr-argdecl): Check for '=' in a putative K&R
+ region.
+
+2012-02-07 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Test for keyword @implementation in a #pragma. This used to
+ loop.
+
+2012-02-07 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ * cc-engine.el (c-forward-objc-directive): Prevent looping in
+ "#pragma mark @implementation".
+
2012-01-19 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.49 released.
@@ -78,10 +421,58 @@
* Makefile (VERSION): XEmacs package 1.48 released.
+2012-01-18 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Eliminate sluggishness and hangs in fontification of "semicolon
+ deserts".
+
+ * cc-engine.el (c-state-nonlit-pos-interval): change value 10000
+ -> 3000.
+ (c-state-safe-place): Reformulate so it doesn't stack up an
+ infinite number of wrong entries in c-state-nonlit-pos-cache.
+ (c-determine-limit-get-base, c-determine-limit): New functions to
+ determine backward search limits disregarding literals.
+ (c-find-decl-spots): Amend commenting.
+ (c-cheap-inside-bracelist-p): New function which detects "={".
+
+ * cc-fonts.el (c-make-font-lock-BO-decl-search-function): Give a
+ limit to a backward search.
+ (c-font-lock-declarations): Fix an occurrence of point being
+ undefined. Check additionally for point being in a bracelist or
+ near a macro invocation without a semicolon so as to avoid a
+ fruitless time consuming search for a declarator. Give a more
+ precise search limit for declarators using the new
+ c-determine-limit.
+
+2012-01-17 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Correct a test to do with C-y:
+ * cc-mode.el (c-after-change): Correct a singular-plural
+ confusion.
+
2012-01-13 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.48 released.
+2012-01-13 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix filling for when filladapt mode is enabled.
+
+ * cc-cmds.el (c-fill-paragraph): In the invocation of
+ c-mask-paragraph, pass in `fill-paragraph' rather than
+ `fill-region-as-paragraph'. (This is a reversion of a previous
+ change.)
+ * cc-mode.el (c-basic-common-init): Make
+ fill-paragraph-handle-comment buffer local and set it to nil.
+
+2012-01-11 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix Emacs bug #10463 - put `widen's around the critical spots.
+
+ * cc-engine.el (c-in-literal, c-literal-limits): put a widen
+ around each invocation of c-state-pp-to-literal. Remove an unused
+ let variable.
+
2012-01-10 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.47 released.
@@ -90,6 +481,104 @@
* Makefile (VERSION): XEmacs package 1.46 released.
+2012-01-08 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Optimise font locking in long enum definitions.
+
+ * cc-fonts.el (c-font-lock-declarations): Add an extra arm to a
+ cond form to handle enums.
+ * cc-langs.el (c-enums-contain-decls): New lang variable.
+ * cc-mode.el (c-font-lock-fontify-region): Correct a typo.
+
+2011-12-24 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Introduce a mechanism to widen the region used in context font
+ locking. Use this to protect declarations from losing their
+ contexts.
+
+ * cc-langs.el (c-before-font-lock-functions): replace
+ c-set-fl-decl-start with c-change-set-fl-decl-start (Renaming).
+ (c-before-context-fontification-functions): new defvar, a list of
+ functions to be run just before context (etc.) font locking.
+
+ * cc-mode.el (c-extend-font-lock-region-for-macros): new,
+ functionality extracted from c-neutralize-syntax-in-and-mark-CPP.
+ (c-in-after-change-fontification): new variable.
+ (c-after-change): Set c-in-after-change-fontification.
+ (c-set-fl-decl-start): Rejig its interface, so it can be called
+ from both after-change and context fontifying.
+ (c-change-set-fl-decl-start, c-context-set-fl-decl-start): new
+ functions.
+ (c-standard-font-lock-fontify-region-function): new variable.
+ (c-font-lock-fontify-region): new function
+
+2011-12-22 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix unstable fontification inside templates.
+
+ * cc-langs.el (c-before-font-lock-functions): newly created from
+ the singular version. The (c c++ objc) entry now additionally has
+ c-set-fl-decl-start. The other languages (apart from AWK) have
+ that as a single entry.
+
+ * cc-fonts.el (c-font-lock-enclosing-decls): The functionality for
+ "local" declarations has been extracted to c-set-fl-decl-start.
+
+ * cc-mode.el: (c-common-init, c-after-change): Changes due to
+ pluralisation of c-before-font-lock-functions.
+ (c-set-fl-decl-start): New function, extraced from
+ c-font-lock-enclosing-decls and enhanced.
+ (top level): Only advise the font-lock change functions when
+ font-lock-extend-after-change-region-function is not defined.
+
+2011-12-20 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Convert some British English spellings to American English.
+
+2011-12-13 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Large brace-block initialisation makes CC Mode slow: Fix. Tidy up
+ and accelerate c-in-literal, etc. by using the c-parse-state
+ routines. Limit backward searching in c-font-lock-enclosing.decl.
+
+ * cc-engine.el (c-state-pp-to-literal): Return the pp-state and
+ literal type in addition to the limits.
+ (c-state-safe-place): New defun, extracted from
+ c-state-literal-at.
+ (c-state-literal-at): Use the above new defun.
+ (c-slow-in-literal, c-fast-in-literal): Removed.
+ (c-in-literal, c-literal-limits): Amended to use
+ c-state-pp-to-literal.
+
+ * cc-fonts.el (c-font-lock-enclosing-decls): Check for being in a
+ literal. Add a limit for backward searching.
+
+ * cc-mode.el (awk-mode): Don't alias c-in-literal to
+ c-slow-in-literal.
+
+2011-12-04 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Add the switch statement to AWK Mode.
+
+ cc-awk (awk-font-lock-keywords): Add "switch", "case", "default"
+ to the keywords regexp.
+
+ cc-langs (c-label-kwds): Let AWK take the same expression as the
+ rest.
+ (c-nonlabel-token-key): Allow string literals for AWK. Refactor
+ for the other modes.
+
+2011-10-22 Alan Mackenzie <bug-cc-mode(a)gnu.org>
+
+ Fix bug #9560, sporadic wrong indentation; improve instrumentation of
+ c-parse-state.
+ * cc-engine.el (c-append-lower-brace-pair-to-state-cache): correct faulty
+ logical expression.
+
+ (c-parse-state-state, c-record-parse-state-state)
+ c-replay-parse-state-state): New defvar/defuns.
+ (c-debug-parse-state): Use new functions.
+
2011-10-18 Norbert Koch <viteno(a)xemacs.org>
* Makefile (VERSION): XEmacs package 1.46 released.
Repository URL: https://bitbucket.org/xemacs/cc-mode/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
Patch for clearcase.el to provide basic syntax hilighting in clearcase-edcs
11 years, 7 months
Thomas Viehweger
Hi,
here is a patch which provides basic syntax hilighting for the
clearcase-edcs-mode. For me it works fine with XEmacs 21.4.22 and 21.5.32.
Maybe you or others find it useful. Feel free to improve the patch.
Regards,
Thomas Viehweger
--- clearcase-orig.el 2013-04-29 22:48:14.244524657 +0200
+++ clearcase.el 2013-04-29 22:50:01.153937998 +0200
@@ -1570,6 +1570,8 @@ the user to edit."
(make-variable-buffer-local 'clearcase-parent-buffer)
(set-buffer-modified-p nil)
(setq buffer-file-name nil)
+ (set (make-local-variable 'font-lock-defaults)
+ '(clearcase-edcs-font-lock-keywords nil t nil))
(run-hooks 'text-mode-hook 'clearcase-edcs-mode-hook))
;; The keymap.
@@ -1589,6 +1591,14 @@ the user to edit."
(defvar clearcase-edcs-tag-history ()
"History of view tags used in clearcase-edcs-edit")
+(defvar clearcase-edcs-font-lock-keywords
+ (eval-when-compile
+ (list
+ '( "#.*" . font-lock-comment-face)
+ '( "\\<\\(e\\(lement\\|nd\\)\\|include\\|load\\|mkbranch\\|time\\)\\>" (1 font-lock-builtin-face))
+ '( "[ \t]+-[a-zA-Z0-9_]+" . font-lock-type-face)
+)))
+
;;{{{ Commands
(defun clearcase-edcs-edit (tag-name)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
commit/cc-mode: acm: Eliminate variable c-standard-font-lock-fontify-region-function.
11 years, 7 months
Bitbucket
1 new commit in cc-mode:
https://bitbucket.org/xemacs/cc-mode/commits/193ab093595b/
Changeset: 193ab093595b
User: acm
Date: 2013-05-02 13:03:04
Summary: Eliminate variable c-standard-font-lock-fontify-region-function.
cc-mode.el (c-standard-font-lock-fontify-region-function): Remove.
(c-font-lock-fontify-region, c-after-font-lock-init): Adapt.
Affected #: 1 file
diff -r ea59a48a0c2a710925c8189bed5ad656b781d34e -r 193ab093595b962fbfe04dbed42b598d9a0abb3a cc-mode.el
--- a/cc-mode.el
+++ b/cc-mode.el
@@ -1184,9 +1184,6 @@
;; `c-set-fl-decl-start' for the detailed functionality.
(cons (c-set-fl-decl-start beg) end))
-(defvar c-standard-font-lock-fontify-region-function nil
- "Standard value of `font-lock-fontify-region-function'")
-
(defun c-font-lock-fontify-region (beg end &optional verbose)
;; Effectively advice around `font-lock-fontify-region' which extends the
;; region (BEG END), for example, to avoid context fontification chopping
@@ -1211,17 +1208,14 @@
(setq new-region (funcall fn new-beg new-end))
(setq new-beg (car new-region) new-end (cdr new-region)))
c-before-context-fontification-functions))))
- (funcall c-standard-font-lock-fontify-region-function
+ (funcall (default-value 'font-lock-fontify-region-function)
new-beg new-end verbose)))
(defun c-after-font-lock-init ()
;; Put on `font-lock-mode-hook'. This function ensures our after-change
- ;; function will get excuted before the font-lock one. Amongst other
- ;; things.
+ ;; function will get excuted before the font-lock one.
(remove-hook 'after-change-functions 'c-after-change t)
- (add-hook 'after-change-functions 'c-after-change nil t)
- (setq c-standard-font-lock-fontify-region-function
- (default-value 'font-lock-fontify-region-function)))
+ (add-hook 'after-change-functions 'c-after-change nil t))
(defun c-font-lock-init ()
"Set up the font-lock variables for using the font-lock support in CC Mode.
Repository URL: https://bitbucket.org/xemacs/cc-mode/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches