From 8e546721219e6ecf94a841334d5198c2ed5cf46d Mon Sep 17 00:00:00 2001
From: Jacob Alexander <haata@kiibohd.com>
Date: Wed, 31 Dec 2014 19:43:10 -0800
Subject: [PATCH] Fixing warning messages found using clang.

---
 Lib/mk20dx.c                  | 12 +++++++-----
 Macro/PartialMap/macro.c      |  2 +-
 Output/pjrcUSB/arm/usb_desc.c |  6 +++---
 3 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/Lib/mk20dx.c b/Lib/mk20dx.c
index 77c1c9a..9b31949 100644
--- a/Lib/mk20dx.c
+++ b/Lib/mk20dx.c
@@ -404,6 +404,7 @@ const uint8_t flashconfigbytes[16] = {
 
 // ----- Functions -----
 
+#if defined(_mk20dx128vlf5_) && defined(_bootloader_) // Bootloader Section
 __attribute__((noreturn))
 static inline void jump_to_app( uintptr_t addr )
 {
@@ -414,6 +415,7 @@ static inline void jump_to_app( uintptr_t addr )
         // NOTREACHED
         __builtin_unreachable();
 }
+#endif
 
 void *memset( void *addr, int val, unsigned int len )
 {
@@ -475,8 +477,8 @@ void ResetHandler()
 	}
 #endif
 
-	uint32_t *src = &_etext;
-	uint32_t *dest = &_sdata;
+	uint32_t *src = (uint32_t*)&_etext;
+	uint32_t *dest = (uint32_t*)&_sdata;
 
 	// Enable clocks to always-used peripherals
 	SIM_SCGC5 = 0x00043F82; // Clocks active to all GPIO
@@ -504,9 +506,9 @@ void ResetHandler()
 	}
 
 	// Prepare RAM
-	while ( dest < &_edata ) *dest++ = *src++;
-	dest = &_sbss;
-	while ( dest < &_ebss ) *dest++ = 0;
+	while ( dest < (uint32_t*)&_edata ) *dest++ = *src++;
+	dest = (uint32_t*)&_sbss;
+	while ( dest < (uint32_t*)&_ebss ) *dest++ = 0;
 
 // MCHCK
 #if defined(_mk20dx128vlf5_)
diff --git a/Macro/PartialMap/macro.c b/Macro/PartialMap/macro.c
index eaaeac6..68869c8 100644
--- a/Macro/PartialMap/macro.c
+++ b/Macro/PartialMap/macro.c
@@ -616,7 +616,7 @@ inline TriggerMacroVote Macro_evalLongTriggerMacroVote( TriggerGuide *key, Trigg
 
 
 // Evaluate/Update TriggerMacro
-inline TriggerMacroEval Macro_evalTriggerMacro( var_uint_t triggerMacroIndex )
+TriggerMacroEval Macro_evalTriggerMacro( var_uint_t triggerMacroIndex )
 {
 	// Lookup TriggerMacro
 	const TriggerMacro *macro = &TriggerMacroList[ triggerMacroIndex ];
diff --git a/Output/pjrcUSB/arm/usb_desc.c b/Output/pjrcUSB/arm/usb_desc.c
index 659d5cd..e5a7f37 100644
--- a/Output/pjrcUSB/arm/usb_desc.c
+++ b/Output/pjrcUSB/arm/usb_desc.c
@@ -567,17 +567,17 @@ struct usb_string_descriptor_struct string0 = {
 struct usb_string_descriptor_struct usb_string_manufacturer_name_default = {
         sizeof(STR_MANUFACTURER),
         3,
-        STR_MANUFACTURER
+        {STR_MANUFACTURER}
 };
 struct usb_string_descriptor_struct usb_string_product_name_default = {
 	sizeof(STR_PRODUCT),
         3,
-        STR_PRODUCT
+        {STR_PRODUCT}
 };
 struct usb_string_descriptor_struct usb_string_serial_number_default = {
 	sizeof(STR_SERIAL),
         3,
-	STR_SERIAL
+	{STR_SERIAL}
 };
 
 
-- 
2.39.5