# HG changeset patch # User Alan Mackenzie # Date 1201442387 0 # Node ID a31afa284500b08a28db5bde278918dfe2a45da3 # Parent 1ccfdc58f4eb81458cf71d361c924c8d8a84527e Introduce elements for the syntactic symbol arglist-cont-nonempty into c-hanging-braces-alist. Amend pertinent functions and 5 styles. diff -r 1ccfdc58f4eb -r a31afa284500 lisp/progmodes/cc-cmds.el --- a/lisp/progmodes/cc-cmds.el Sun Jan 27 13:57:49 2008 +0000 +++ b/lisp/progmodes/cc-cmds.el Sun Jan 27 13:59:47 2008 +0000 @@ -524,7 +524,11 @@ ;; 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 diff -r 1ccfdc58f4eb -r a31afa284500 lisp/progmodes/cc-styles.el --- a/lisp/progmodes/cc-styles.el Sun Jan 27 13:57:49 2008 +0000 +++ b/lisp/progmodes/cc-styles.el Sun Jan 27 13:59:47 2008 +0000 @@ -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 . +) @@ -170,7 +171,8 @@ (case-label . +) (access-label . -) (inclass . ++) - (inline-open . 0)))) + (inline-open . 0) + (arglist-cont-nonempty)))) ("linux" (c-basic-offset . 8) @@ -178,7 +180,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) @@ -200,7 +203,8 @@ (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" @@ -230,7 +234,8 @@ (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 . +) diff -r 1ccfdc58f4eb -r a31afa284500 lisp/progmodes/cc-vars.el --- a/lisp/progmodes/cc-vars.el Sun Jan 27 13:57:49 2008 +0000 +++ b/lisp/progmodes/cc-vars.el Sun Jan 27 13:59:47 2008 +0000 @@ -729,7 +729,8 @@ (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 @@ 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