Introduce elements for the syntactic symbol arglist-cont-nonempty into
authorAlan Mackenzie <acm@muc.de>
Sun, 27 Jan 2008 13:59:47 +0000 (13:59 +0000)
committerAlan Mackenzie <acm@muc.de>
Sun, 27 Jan 2008 13:59:47 +0000 (13:59 +0000)
c-hanging-braces-alist.  Amend pertinent functions and 5 styles.

lisp/progmodes/cc-cmds.el
lisp/progmodes/cc-styles.el
lisp/progmodes/cc-vars.el

index 8d3facb..1a2ee3f 100644 (file)
@@ -524,7 +524,11 @@ inside a literal or a macro, nothing special happens."
        ;; This is the list of brace syntactic symbols that can hang.
        ;; If any new ones are added to c-offsets-alist, they should be
        ;; added here as well.
-       '(class-open class-close defun-open defun-close
+       ;; 
+       ;; The order of this list is important; if SYNTAX has several
+       ;; elements, the element that "wins" is the earliest in SYMS.
+       '(arglist-cont-nonempty         ; e.g. an array literal.
+                    class-open class-close defun-open defun-close
                     inline-open inline-close
                     brace-list-open brace-list-close
                     brace-list-intro brace-entry-open
index 41f1836..26596e4 100644 (file)
@@ -58,7 +58,8 @@
   '(("gnu"
      (c-basic-offset . 2)
      (c-comment-only-line-offset . (0 . 0))
-     (c-hanging-braces-alist     . ((substatement-open before after)))
+     (c-hanging-braces-alist     . ((substatement-open before after)
+                                   (arglist-cont-nonempty)))
      (c-offsets-alist . ((statement-block-intro . +)
                         (knr-argdecl-intro . 5)
                         (substatement-open . +)
                          (case-label           . +)
                          (access-label         . -)
                          (inclass              . ++)
-                        (inline-open          . 0))))
+                        (inline-open          . 0)
+                        (arglist-cont-nonempty))))
 
     ("linux"
      (c-basic-offset  . 8)
      (c-hanging-braces-alist . ((brace-list-open)
                                (brace-entry-open)
                                (substatement-open after)
-                               (block-close . c-snug-do-while)))
+                               (block-close . c-snug-do-while)
+                               (arglist-cont-nonempty)))
      (c-cleanup-list . (brace-else-brace))
      (c-offsets-alist . ((statement-block-intro . +)
                         (knr-argdecl-intro     . 0)
                                (brace-list-close)
                                (brace-entry-open)
                                (substatement-open after)
-                               (block-close . c-snug-do-while)))
+                               (block-close . c-snug-do-while)
+                               (arglist-cont-nonempty)))
      (c-block-comment-prefix . ""))
 
     ("java"
      (c-hanging-braces-alist . ((defun-open after)
                                (defun-close . c-snug-1line-defun-close)
                                (substatement-open after)
-                               (block-close . c-snug-do-while)))
+                               (block-close . c-snug-do-while)
+                               (arglist-cont-nonempty)))
      (c-hanging-semi&comma-criteria . nil)
      (c-cleanup-list . nil)            ; You might want one-liner-defun here.
      (c-offsets-alist . ((statement-block-intro . +)
index c217e6e..8b7b9cd 100644 (file)
@@ -729,7 +729,8 @@ involve auto-newline inserted newlines:
                                               (module-open after)
                                               (composition-open after)
                                               (inexpr-class-open after)
-                                              (inexpr-class-close before))
+                                              (inexpr-class-close before)
+                                              (arglist-cont-nonempty))
   "*Controls the insertion of newlines before and after braces
 when the auto-newline feature is active.  This variable contains an
 association list with elements of the following form:
@@ -783,7 +784,8 @@ syntactic context for the brace line."
              namespace-open namespace-close
              module-open module-close
              composition-open composition-close
-             inexpr-class-open inexpr-class-close)))
+             inexpr-class-open inexpr-class-close
+             arglist-cont-nonempty)))
     :group 'c)
 
 (defcustom c-max-one-liner-length 80