1. 27 Nov, 2011 1 commit
  2. 20 Nov, 2011 2 commits
  3. 03 Nov, 2011 1 commit
  4. 27 Oct, 2011 1 commit
    • Alan Mackenzie's avatar
      Amend to indent and fontify macros "which include their own semicolon" · 536610a4
      Alan Mackenzie authored
      correctly, using the "virtual semicolon" mechanism.
      cc-defs.el: Update "virtual semicolon" comments.
      cc-engine.el (c-crosses-statement-barrier-p): Recoded to scan one line at
      at time rather than having \n and \r explicitly in c-stmt-delim-chars
      (for some modes, e.g. AWK).
      (c-forward-label): Amend for virtual semicolons.
      (c-at-macro-vsemi-p, c-macro-vsemi-status-unknown-p): New functions
      cc-fonts.el (c-font-lock-declarations): Take account of the new C macros.
      cc-langs.el (c-at-vsemi-p-fn, c-vsemi-status-unknown-p-fn): move to
      earlier in the file.
      (c-opt-cpp-symbol, c-line-comment-start-regexp): New language variables.
      (c-opt-cpp-macro-define): Make into a full language variable.
      (c-stmt-delim-chars, c-stmt-delim-chars-with-comma): Special value for
      AWK Mode (including \n, \r) removed, no longer needed.
      cc-mode.el (c-mode, c++-mode, objc-mode): Invoke
      cc-vars.el (c-macro-with-semi-re, c-macro-names-with-semicolon): New
      (c-make-macro-with-semi-re): New function
      cc-mode.texi (Indentation Commands): Mention "macros with semicolons".
      (Other Special Indentations): Add an xref to "Macros with ;".
      (Customizing Macros): Add stuff about syntax in macros.  Add an xref to
      "Macros with ;".
      (Macros with ;): New page.
  5. 20 Aug, 2011 2 commits
    • Alan Mackenzie's avatar
      Resolve invalid use of a regexp in regexp-opt. · e3715033
      Alan Mackenzie authored
      cc-fonts.el (c-complex-decl-matchers): Add in special detection for a
      java annotation.
      cc-engine.el (c-forward-decl-or-cast-1): Add in special detection for a
      java annotation.
      cc-langs.el (c-prefix-spec-kwds-re): Remove the special handling for
      (c-modifier-kwds): Remove the regexp "@[A-za-z0-9]+".
    • Alan Mackenzie's avatar
      Fontify CPP expressions correctly when starting in the middle of such a · b128268e
      Alan Mackenzie authored
      construct.  Mainly for when jit-lock etc. starts a chunk here.
      cc-fonts.el (c-font-lock-context): new buffer local variable.
      (c-make-font-lock-search-form): new function, extracted from
      (c-make-font-lock-search-function): Use the above function.
      (c-make-font-lock-context-search-function): New function.
      (c-cpp-matchers): Enhance the preprocessor expression case with the above
      (c-font-lock-complex-decl-prepare):  Test for being in a CPP form which
      takes an expression.
      cc-langs.el (c-cpp-expr-intro-re): New lang-variable.
  6. 26 Jul, 2011 1 commit
    • Alan Mackenzie's avatar
      Fontify bitfield declarations properly. · b248a85d
      Alan Mackenzie authored
      cc-langs.el (c-has-bitfields): New lang variable.
      (c-symbol-chars): Now exported as a lang variable.
      (c-not-primitive-type-keywords): New lang variable.
      cc-fonts.el (c-font-lock-declarations): Jump over the QT keyword "more"
      to prevent "more slots: ...." being spuriously parsed as a bitfield
      cc-engine.el (c-beginning-of-statement-1): Refactor and enhance to handle
      bitfield declarations.
      (c-punctuation-in): New function.
      (c-forward-decl-or-cast-1): Enhance CASE 3 to handle bitfield
      declarations properly.
  7. 22 Jul, 2011 1 commit
    • Alan Mackenzie's avatar
      Prevent cc-langs.elc being loaded at run time. · a9901f61
      Alan Mackenzie authored
      cc-mode.el: Remove two autoload forms which loaded cc-langs.
      cc-langs.el (c-make-init-lang-vars-fun): Don't emit "(require 'cc-langs)".
      Quote a form so it will evaluate at (cc-mode's) compilation time.
  8. 18 Jul, 2011 1 commit
  9. 30 Jun, 2011 1 commit
    • Alan Mackenzie's avatar
      progmodes/cc-guess.el: New file. · b14c0c55
      Alan Mackenzie authored
      progmodes/cc-langs.el (c-mode-menu): Added "Style..." submenu.
      progmodes/cc-styles.el (cc-choose-style-for-mode): New function derived
      from `c-basic-common-init'.
      progmodes/cc-mode.el (top-level): Require cc-guess.
      (c-basic-common-init): Use `cc-choose-style-for-mode'.
  10. 26 Jan, 2011 1 commit
  11. 25 Jan, 2011 1 commit
  12. 15 Jan, 2011 1 commit
  13. 02 Jan, 2011 1 commit
  14. 19 Oct, 2010 1 commit
  15. 09 Oct, 2010 1 commit
    • Alan Mackenzie's avatar
      Enhance fontification of declarators to take account of the · e15f8aaa
      Alan Mackenzie authored
      presence/absence of "typedef".
      cc-engine.el (c-forward-type): New &optional param "brace-block-too".
      (c-forward-decl-or-cast-1): cdr of return value now indicates the
      presence of either or both of a "struct"-like keyword and "typedef".
      cc-fonts.el (c-complex-decl-matchers): Remove the heuristic fontification
      of declarators which follow a "}".
      (c-font-lock-declarations): Fontify declarators according to the
      presence/absence of "typedef".
      cc-langs.el (c-typedef-kwds c-typedef-key): New lang variable for
      (c-typedef-decl-key): New lang variable built from c-typedef-decl-kwds.
  16. 29 Aug, 2010 1 commit
  17. 31 Jul, 2010 1 commit
  18. 12 Apr, 2010 2 commits
  19. 04 Feb, 2010 1 commit
  20. 13 Jan, 2010 1 commit
  21. 03 Dec, 2009 1 commit
    • Alan Mackenzie's avatar
      Enhance `c-parse-state' to run efficiently in "brace desserts". · 0ec1d2c5
      Alan Mackenzie authored
      * progmodes/cc-mode.el (c-basic-common-init): Call
      (c-neutralize-syntax-in-and-mark-CPP):  Renamed from
      c-extend-and-neutralize-syntax-in-CPP.  Mark each CPP construct by
      placing `category' properties value 'c-cpp-delimiter at its
      * progmodes/cc-langs.el (c-before-font-lock-function):
      c-extend-and-neutralize-syntax-in-CPP has been renamed
      * progmodes/cc-fonts.el (c-cpp-matchers): Mark template brackets
      with `category' properties now, not `syntax-table' ones.
      * progmodes/cc-engine.el (c-syntactic-end-of-macro): A new
      enhanced (but slower) version of c-end-of-macro that won't land
      inside a literal or on another awkward character.
      (c-state-cache-too-far, c-state-cache-start)
      (c-state-nonlit-pos-interval, c-state-nonlit-pos-cache)
      (c-state-nonlit-pos-cache-limit, c-state-point-min)
      (c-state-point-min-lit-type, c-state-point-min-lit-start)
      (c-state-min-scan-pos, c-state-brace-pair-desert)
      (c-state-old-cpp-beg, c-state-old-cpp-end): New constants and
      buffer local variables.
      (c-state-literal-at, c-state-lit-beg)
      (c-state-cache-non-literal-place, c-state-get-min-scan-pos)
      (c-state-mark-point-min-literal, c-state-cache-top-lparen)
      (c-state-cache-top-paren, c-state-cache-after-top-paren)
      (c-get-cache-scan-pos, c-get-fallback-scan-pos)
      (c-state-balance-parens-backwards, c-parse-state-get-strategy)
      (c-state-push-any-brace-pair, c-append-to-state-cache)
      (c-remove-stale-state-cache-backwards, c-state-cache-init)
      (c-invalidate-state-cache-1, c-parse-state-1)
      (c-invalidate-state-cache): New defuns/defmacros/defsubsts.
      (c-parse-state): Enhanced and refactored.
      (c-debug-parse-state): Amended to deal with all the new variables.
      * progmodes/cc-defs.el (c-<-as-paren-syntax, c-mark-<-as-paren)
      (c->-as-paren-syntax, c-mark->-as-paren, c-unmark-<->-as-paren):
      modify to use category text properties rather than syntax-table
      (c-suppress-<->-as-parens, c-restore-<->-as-parens): new defsubsts
      to switch off/on the syntactic paren property of C++ template
      delimiters using the category property.
      (c-with-<->-as-parens-suppressed): Macro to invoke code with
      template delims suppressed.
      (c-cpp-delimiter, c-set-cpp-delimiters, c-clear-cpp-delimiters):
      New constant/macros which apply category properties to the start
      and end of preprocessor constructs.
      (c-comment-out-cpps, c-uncomment-out-cpps): defsubsts which
      "comment out" the syntactic value of characters in preprocessor
      (c-with-all-but-one-cpps-commented-out): Macros to invoke code
      with characters in all or all but one preprocessor constructs
      "commented out".
  22. 20 Nov, 2009 1 commit
    • Tassilo Horn's avatar
      2009-11-20 Tassilo Horn <tassilo@member.fsf.org> · 653d1554
      Tassilo Horn authored
      	* progmodes/cc-cmds.el (c-update-modeline)
      	(c-forward-into-nomenclature, c-backward-into-nomenclature): Refer
      	to subword.el functions instead of cc-subword.el.
      	* progmodes/cc-mode.el (subword-mode, c-mode-base-map): Refer to
      	subword.el functions instead of cc-subword.el.
      	* progmodes/cc-subword.el: Renamed to subword.el.
      	* subword.el: Renamed from progmodes/cc-subword.el.
      	(subword-mode-map): Renamed from c-subword-mode-map.
      	(subword-mode): Renamed from c-subword-mode.
      	(global-subword-mode): New global minor mode.
      	(forward-subword): Renamed from c-forward-subword.
      	(backward-subword): Renamed from c-backward-subword.
      	(mark-subword): Renamed from c-mark-subword.
      	(kill-subword): Renamed from c-kill-subword.
      	(backward-kill-subword): Renamed from c-backward-kill-subword.
      	(transpose-subwords): Renamed from c-tranpose-subword.
      	(downcase-subword): Renamed from c-downcase-subword.
      	(capitalize-subword): Renamed from c-capitalize-subword.
      	(forward-subword-internal): Renamed from
      	(backward-subword-internal): Renamed from
  23. 26 Sep, 2009 1 commit
  24. 19 May, 2009 1 commit
    • Alan Mackenzie's avatar
      cc-mode.el (c-extend-and-neutralize-CPP-line): Renamed from · a0526d5e
      Alan Mackenzie authored
      c-neutralize-syntax-in-CPP.  Set the variables c-new-BEG and c-new-END,
      thus extending the font-lock region.
      (c-font-lock-init): Don't set obsolete variable font-lock-lines-before.
      cc-langs.el (c-before-font-lock-function): Rename a value to
  25. 30 Apr, 2009 1 commit
    • Alan Mackenzie's avatar
      Enhancements for Objective-C: · f0e4b2f2
      Alan Mackenzie authored
      c-objc-method-arg-unfinished-offset, c-objc-method-parameter-offset): New
      (c-offsets-alist): Use c-lineup-ObjC-method-call-colons in entry for
      cc-langs.el (c-constant-kwds): New ObjC keywords "YES", "NO",
      cc-align.el (c-lineup-ObjC-method-call-colons): New function.
  26. 21 Feb, 2009 1 commit
  27. 17 Jan, 2009 1 commit
  28. 11 Jan, 2009 1 commit
  29. 05 Jan, 2009 1 commit
  30. 02 Sep, 2008 1 commit
  31. 06 May, 2008 1 commit
  32. 10 Apr, 2008 1 commit
  33. 06 Apr, 2008 2 commits
  34. 04 Mar, 2008 1 commit
  35. 01 Mar, 2008 1 commit
  36. 19 Feb, 2008 1 commit
    • Alan Mackenzie's avatar
      Set of changes so that "obtrusive" syntactic elements in a · 5ee2e988
      Alan Mackenzie authored
      C/C++/ObjC preprocessor line (e.g. an unbalanced string quote or
      unmatched paren) don't interact syntactically with stuff outside
      the CPP line.
      (c-get-state-before-change-function, c-before-font-lock-function,
      c-anchored-cpp-prefix): new language variables.
      (c-cpp-message-directives): Handle "#warning" in C, C++ and ObjC.