Since GDB has switched to C++ but the file names are still .c emacs does
not load the proper mode when opening files in the gdb directory.
This patch fixes that by enabling c++ mode.
This patch also fixes indentation tweaks as discussed in this thread:
https://sourceware.org/ml/gdb-patches/2016-12/msg00074.html
Indent with gdb-code-style.el included and the .dir-locals.el is as such:
namespace TestNameSpace {
class test
{
public:
test test() {}
int m_a;
};
struct teststruct
{
int a;
}
}
gdb/ChangeLog:
* .dir-locals.el: Set c++ mode for the directory and set indent
properly.
* gdb-code-style.el: Set c-set-offset 'innamespace as a safe value
to be used in .dir-locals.el.
(indent-tabs-mode . t)))
(nil . ((bug-reference-url-format . "http://sourceware.org/bugzilla/show_bug.cgi?id=%s")))
(c-mode . ((c-file-style . "GNU")
- (indent-tabs-mode . t)))
+ (mode . c++)
+ (indent-tabs-mode . t)
+ (tab-width . 8)
+ (c-basic-offset . 2)
+ (eval . (c-set-offset 'innamespace 0))
+ ))
)
+2016-12-20 Antoine Tremblay <antoine.tremblay@ericsson.com>
+
+ * .dir-locals.el: Set c++ mode for the directory and set indent
+ properly.
+ * gdb-code-style.el: Set c-set-offset 'innamespace as a safe value
+ to be used in .dir-locals.el.
+
2016-12-16 Bernhard Heckel <bernhard.heckel@intel.com>
* darwin-nat-info.c (info_mach_region_command): Use expression_up.
)
(add-hook 'c-mode-common-hook 'gdb-comment-hook)
+;; Set c-set-offset 'innamespace as a safe value to be used in .dir-locals.el.
+(setq safe-local-variable-values
+ (cons safe-local-variable-values
+ '((eval c-set-offset 'innamespace 0)
+ (c-offsets-alist (innamespace . 0)))))
;;; gdb-code-style.el ends here