Subject: bug#7327: 24.0.50; cc-mode: default indentation inconsistent with typedefs

From: Christoph <[email-masked]>
Date: Wed, 03 Nov 2010 17:25:07 -0600

Start with `emacs -Q'. Start new .c file.

Type `typedef enum' then hit `C-j', then `{'.

The code is indented like this:

typedef enum
  {
    blabla

Then try `typedef struct', `C-j', '{'.

The code is indented like this:

typedef struct
{
  blabla

This happens in 24.0.50, bzr revision 102241 and also 23.2.1.

I don't know which one is right, but I think the indentation should by
default be consistent.

In GNU Emacs 24.0.50.1 (i386-mingw-nt6.1.7600)
 of 2010-11-03 on MARVIN
Windowing system distributor `Microsoft Corp.', version 6.1.7600
configured using `configure --with-gcc (4.5) --cflags -IC:/Progra~2/GnuWin32/include -ID:/devel/emacs/libXpm-3.5.8/include -ID:/devel/emacs/libXpm-3.5.8/src'

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: ENU
  value of $XMODIFIERS: nil
  locale-coding-system: cp1252
  default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  ido-everywhere: t
  yas/global-mode: t
  yas/minor-mode: t
  global-auto-revert-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t

Recent input:
C-x RET r e p o r t <tab> <return>

Recent messages:
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/windows.el (source)...done
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/plugins.el (source)...
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/plugins/color-theme/themes/color-theme-example.el (source)...done
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/plugins/color-theme/themes/color-theme-library.el (source)...done
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/plugins/zenburn.el (source)...done
Ido mode enabled
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/anything-c-adaptive-history...done
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/plugins.el (source)...done
Loading c:/Users/Christoph/AppData/Roaming/.emacs.d/custom.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr message rfc822 mml mml-sec mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader emacsbug
server js2-mode-autoloads rainbow-mode-autoloads package re-builder
dired+ dired-x ediff-merg ediff-diff ediff-wind ediff-mult ediff-help
ediff-init ediff-util dired-aux ibuffer nav nav-tags python-21 python
nav-bufs anything-config warnings browse-url semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw loaddefs
eieio byte-opt bytecomp byte-compile mode-local cedet imenu bookmark pp
dired rx ffap thingatpt anything google-c-style cc-mode cc-fonts
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
grep-o-matic grep compile comint browse-kill-ring+ browse-kill-ring
second-sel ido yasnippet dropdown-list derived easy-mmode assoc
etags-table etags ring remember zenburn color-theme edmacro kmacro
wid-edit cl sendmail regexp-opt reporter easymenu uniquify advice
help-fns advice-preload autorevert tooltip ediff-hook vc-hooks
lisp-float-type mwheel dos-w32 disp-table ls-lisp w32-win w32-vars
tool-bar dnd fontset image fringe lisp-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev button minibuffer faces cus-face files
text-properties overlay md5 base64 format env code-pages mule custom
widget hashtable-print-readable backquote make-network-process multi-tty
emacs)