gdb/emacs/dir-locals: Update settings for c++-mode
authorAndrew Burgess <andrew.burgess@embecosm.com>
Fri, 7 Dec 2018 10:45:01 +0000 (10:45 +0000)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Fri, 7 Dec 2018 23:20:30 +0000 (23:20 +0000)
The current .dir-locals file for GDB causes files that would usually
open in c-mode (for example, files ending in .c) to open in c++-mode.
However, all of the other settings applied for c-mode appear to get
reset when the file is switched over to c++-mode.

For example, we currently say:

 (c-mode . ((c-file-style . "GNU")
    (mode . c++)
    (indent-tabs-mode . t)
    (tab-width . 8)
    (c-basic-offset . 2)
    (eval . (c-set-offset 'innamespace 0))
    ))
 (c++-mode . ((eval . (when (fboundp 'c-toggle-comment-style)
(c-toggle-comment-style 1)))))

So, when we enter c++-mode `indent-tabs-mode` is reset to its global
value, as are all of the other settings listed for c-mode.

This commit copies all of the settings (except the `mode` setting)
from the c-mode list to the c++-mode list.

The emacs documentation doesn't mention that `mode` causes this
resetting behaviour, so, in case this is an emacs bug, I'm using emacs
version 26.1.  Having the settings duplicated shouldn't cause any
problems except for a slight maintenance overhead.

gdb/ChangeLog:

* .dir-locals.el: Copy most of the settings from c-mode over to
c++-mode.

gdb/.dir-locals.el
gdb/ChangeLog

index 7e2b0cc..d5ca5b3 100644 (file)
            (eval . (c-set-offset 'innamespace 0))
            ))
  (c++-mode . ((eval . (when (fboundp 'c-toggle-comment-style)
-                       (c-toggle-comment-style 1)))))
+                       (c-toggle-comment-style 1)))
+             (indent-tabs-mode . t)
+             (tab-width . 8)
+             (c-file-style . "GNU")
+             (c-basic-offset . 2)
+             (eval . (c-set-offset 'innamespace 0))
+             ))
 )
index e744d0b..2e105ae 100644 (file)
@@ -1,3 +1,8 @@
+2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * .dir-locals.el: Copy most of the settings from c-mode over to
+       c++-mode.
+
 2018-12-08  Stafford Horne  <shorne@gmail.com>
 
        * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.