From e87691fa5db011e50fa2a9a5e2881dfda9392bef Mon Sep 17 00:00:00 2001
From: ariasuni <perso@hack-libre.org>
Date: Sat, 27 May 2017 00:25:35 +0200
Subject: [PATCH] Fix undefined reference errors with avr-gcc 7.1

---
 keyboards/ergodox/ez/ez.c           | 26 +++++++++++++++++++++++++-
 keyboards/gh60/gh60.c               | 28 +++++++++++++++++++++-------
 keyboards/pegasushoof/pegasushoof.c |  8 ++++++++
 keyboards/xd60/xd60.c               |  8 ++++++++
 4 files changed, 62 insertions(+), 8 deletions(-)

diff --git a/keyboards/ergodox/ez/ez.c b/keyboards/ergodox/ez/ez.c
index 3e19f23028..d502249543 100644
--- a/keyboards/ergodox/ez/ez.c
+++ b/keyboards/ergodox/ez/ez.c
@@ -1,6 +1,30 @@
 #include "ez.h"
 #include "i2cmaster.h"
 
+
+extern inline void ergodox_board_led_on(void);
+extern inline void ergodox_right_led_1_on(void);
+extern inline void ergodox_right_led_2_on(void);
+extern inline void ergodox_right_led_3_on(void);
+extern inline void ergodox_right_led_on(uint8_t led);
+
+extern inline void ergodox_board_led_off(void);
+extern inline void ergodox_right_led_1_off(void);
+extern inline void ergodox_right_led_2_off(void);
+extern inline void ergodox_right_led_3_off(void);
+extern inline void ergodox_right_led_off(uint8_t led);
+
+extern inline void ergodox_led_all_on(void);
+extern inline void ergodox_led_all_off(void);
+
+extern inline void ergodox_right_led_1_set(uint8_t n);
+extern inline void ergodox_right_led_2_set(uint8_t n);
+extern inline void ergodox_right_led_3_set(uint8_t n);
+extern inline void ergodox_right_led_set(uint8_t led, uint8_t n);
+
+extern inline void ergodox_led_all_set(uint8_t n);
+
+
 bool i2c_initialized = 0;
 uint8_t mcp23018_status = 0x20;
 
@@ -57,7 +81,7 @@ uint8_t init_mcp23018(void) {
     // cli();
     if (i2c_initialized == 0) {
         i2c_init();  // on pins D(1,0)
-        i2c_initialized++;
+        i2c_initialized = true;
         _delay_ms(1000);
     }
 
diff --git a/keyboards/gh60/gh60.c b/keyboards/gh60/gh60.c
index f5a158e12f..441c799fa3 100644
--- a/keyboards/gh60/gh60.c
+++ b/keyboards/gh60/gh60.c
@@ -1,25 +1,39 @@
 #include "gh60.h"
 
+
+extern inline void gh60_caps_led_on(void);
+extern inline void gh60_poker_leds_on(void);
+extern inline void gh60_fn_led_on(void);
+extern inline void gh60_esc_led_on(void);
+extern inline void gh60_wasd_leds_on(void);
+
+extern inline void gh60_caps_led_off(void);
+extern inline void gh60_poker_leds_off(void);
+extern inline void gh60_fn_led_off(void);
+extern inline void gh60_esc_led_off(void);
+extern inline void gh60_wasd_leds_off(void);
+
+
 void led_set_kb(uint8_t usb_led) {
 	// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
-	
+
     if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
 		gh60_caps_led_on();
 		} else {
-		gh60_caps_led_off(); 
+		gh60_caps_led_off();
     }
-	
+
     // if (usb_led & (1<<USB_LED_NUM_LOCK)) {
 		// gh60_esc_led_on();
 		// } else {
-		// gh60_esc_led_off(); 
+		// gh60_esc_led_off();
     // }
-	
+
     // if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
 		// gh60_fn_led_on();
 		// } else {
-		// gh60_fn_led_off(); 	
+		// gh60_fn_led_off();
     // }
 
-	led_set_user(usb_led);	
+	led_set_user(usb_led);
 }
diff --git a/keyboards/pegasushoof/pegasushoof.c b/keyboards/pegasushoof/pegasushoof.c
index 6bb249aef4..cde814812e 100644
--- a/keyboards/pegasushoof/pegasushoof.c
+++ b/keyboards/pegasushoof/pegasushoof.c
@@ -17,6 +17,14 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "pegasushoof.h"
 
+
+extern inline void ph_caps_led_on(void);
+extern inline void ph_caps_led_off(void);
+
+extern inline void ph_sclk_led_on(void);
+extern inline void ph_sclk_led_off(void);
+
+
 __attribute__ ((weak))
 void matrix_init_user(void) {
 };
diff --git a/keyboards/xd60/xd60.c b/keyboards/xd60/xd60.c
index 4307f5f593..c3b63e5eaf 100644
--- a/keyboards/xd60/xd60.c
+++ b/keyboards/xd60/xd60.c
@@ -1,5 +1,13 @@
 #include "xd60.h"
 
+
+extern inline void xd60_caps_led_on(void);
+extern inline void xd60_bl_led_on(void);
+
+extern inline void xd60_caps_led_off(void);
+extern inline void xd60_bl_led_off(void);
+
+
 void led_set_kb(uint8_t usb_led) {
 	// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here