summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authortmk <nobody@nowhere>2014-11-14 22:53:25 +0900
committertmk <nobody@nowhere>2014-11-14 22:53:25 +0900
commita58b9ddbd5b725fc603e0b796638a488cdb31b46 (patch)
tree62854faa3a90171d5c22cf46b77f2fb13eaa1038 /common
parent818070913275349c3906e2c4cdc3d69da5b7e132 (diff)
downloadqmk_firmware-a58b9ddbd5b725fc603e0b796638a488cdb31b46.tar.gz
qmk_firmware-a58b9ddbd5b725fc603e0b796638a488cdb31b46.zip
Add initializer of debug_config for GCC < 4.6.0(#144)
Diffstat (limited to 'common')
-rw-r--r--common/debug.c13
-rw-r--r--common/debug_config.h2
2 files changed, 12 insertions, 3 deletions
diff --git a/common/debug.c b/common/debug.c
index 2ed1006c5a..18613fc28b 100644
--- a/common/debug.c
+++ b/common/debug.c
@@ -4,12 +4,21 @@
#define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
debug_config_t debug_config = {
+/* GCC Bug 10676 - Using unnamed fields in initializers
+ * https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10676 */
#if GCC_VERSION >= 40600
- /* GCC Bug 10676 - Using unnamed fields in initializers
- * https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10676 */
.enable = false,
.matrix = false,
.keyboard = false,
.mouse = false,
+ .reserved = 0
+#else
+ {
+ false, // .enable
+ false, // .matrix
+ false, // .keyboard
+ false, // .mouse
+ 0 // .reserved
+ }
#endif
};
diff --git a/common/debug_config.h b/common/debug_config.h
index 43e4c5c554..28bc34cd57 100644
--- a/common/debug_config.h
+++ b/common/debug_config.h
@@ -27,7 +27,6 @@ extern "C" {
/* NOTE: Not portable. Bit field order depends on implementation */
typedef union {
- uint8_t raw;
struct {
bool enable:1;
bool matrix:1;
@@ -35,6 +34,7 @@ typedef union {
bool mouse:1;
uint8_t reserved:4;
};
+ uint8_t raw;
} debug_config_t;
extern debug_config_t debug_config;