From 98947e3750e07054f9da46af82225e9ef89ed656 Mon Sep 17 00:00:00 2001
From: Dean Camera <dean@fourwalledcubicle.com>
Date: Tue, 3 Aug 2010 11:13:06 +0000
Subject: Ensure all demos now compile in C99 standards mode, and not GNU99
 (C99 + GNU extensions).

---
 .../Incomplete/Sideshow/Lib/SideshowCommands.c     | 22 +++++++++++-----------
 .../Incomplete/Sideshow/Lib/SideshowCommon.h       |  2 +-
 Demos/Device/Incomplete/Sideshow/Sideshow.c        |  2 +-
 Demos/Device/Incomplete/Sideshow/makefile          |  2 +-
 .../Device/Incomplete/TestAndMeasurement/makefile  |  2 +-
 LUFA/ManPages/ChangeLog.txt                        |  1 +
 Projects/LEDNotifier/LEDNotifier.c                 |  6 +++---
 7 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommands.c b/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommands.c
index 827deb0a4..eebc2ef35 100644
--- a/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommands.c
+++ b/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommands.c
@@ -50,7 +50,7 @@ void Sideshow_ProcessCommandPacket(void)
 	Endpoint_SelectEndpoint(SIDESHOW_OUT_EPNUM);	
 	Endpoint_Read_Stream_LE(&PacketHeader, sizeof(SideShow_PacketHeader_t));
 	
-	PacketHeader.Type.Response = true;
+	PacketHeader.Type.TypeFields.Response = true;
 
 	printf("\r\nCmd: %lX", (PacketHeader.Type.TypeLong & 0x00FFFFFF));
 
@@ -108,7 +108,7 @@ void Sideshow_ProcessCommandPacket(void)
 			Endpoint_ClearOUT();
 
 			PacketHeader.Length   = sizeof(SideShow_PacketHeader_t);
-			PacketHeader.Type.NAK = true;
+			PacketHeader.Type.TypeFields.NAK = true;
 			
 			Endpoint_SelectEndpoint(SIDESHOW_IN_EPNUM);	
 			Endpoint_Write_Stream_LE(&PacketHeader, sizeof(SideShow_PacketHeader_t));		
@@ -135,7 +135,7 @@ static void SideShow_Sync(SideShow_PacketHeader_t* const PacketHeader)
 	Endpoint_ClearOUT();
 	
 	if (!(GUID_COMPARE(&ProtocolGUID, (uint32_t[])STANDARD_PROTOCOL_GUID)))
-	  PacketHeader->Type.NAK = true;
+	  PacketHeader->Type.TypeFields.NAK = true;
 	
 	Endpoint_SelectEndpoint(SIDESHOW_IN_EPNUM);
 	Endpoint_Write_Stream_LE(PacketHeader, sizeof(SideShow_PacketHeader_t));		
@@ -247,7 +247,7 @@ static void SideShow_GetCapabilities(SideShow_PacketHeader_t* const PacketHeader
 	}	
 	else
 	{
-		PacketHeader->Type.NAK = true;		
+		PacketHeader->Type.TypeFields.NAK = true;		
 		
 		printf(" WRONG GUID");
 		printf(" %lX %lX %lX %lX", Property.PropertyGUID.Chunks[0], Property.PropertyGUID.Chunks[1],
@@ -257,7 +257,7 @@ static void SideShow_GetCapabilities(SideShow_PacketHeader_t* const PacketHeader
 	Endpoint_SelectEndpoint(SIDESHOW_IN_EPNUM);
 	Endpoint_Write_Stream_LE(PacketHeader, sizeof(SideShow_PacketHeader_t));
 	
-	if (!(PacketHeader->Type.NAK))
+	if (!(PacketHeader->Type.TypeFields.NAK))
 	{
 		switch (PropertyData.DataType)
 		{
@@ -356,7 +356,7 @@ static void SideShow_AddApplication(SideShow_PacketHeader_t* const PacketHeader)
 		Endpoint_Discard_Stream(PacketHeader->Length);
 		Endpoint_ClearOUT();
 
-		PacketHeader->Type.NAK = true;
+		PacketHeader->Type.TypeFields.NAK = true;
 	}
 	else
 	{
@@ -394,7 +394,7 @@ static void SideShow_DeleteApplication(SideShow_PacketHeader_t* const PacketHead
 	if (AppToDelete != NULL)
 	  AppToDelete->InUse = false;
 	else
-	  PacketHeader->Type.NAK = true;
+	  PacketHeader->Type.TypeFields.NAK = true;
 
 	PacketHeader->Length = sizeof(SideShow_PacketHeader_t);
 
@@ -429,11 +429,11 @@ static void SideShow_AddContent(SideShow_PacketHeader_t* const PacketHeader)
 	if (Application == NULL)
 	{
 		SideShow_Discard_Byte_Stream();
-		PacketHeader->Type.NAK = true;
+		PacketHeader->Type.TypeFields.NAK = true;
 	}
 	else if (!(SideShow_AddSimpleContent(PacketHeader, Application)))
 	{
-		PacketHeader->Type.NAK = true;
+		PacketHeader->Type.TypeFields.NAK = true;
 	}
 	
 	Endpoint_ClearOUT();
@@ -461,7 +461,7 @@ static void SideShow_DeleteContent(SideShow_PacketHeader_t* const PacketHeader)
 	if ((Application != NULL) && (Application->CurrentContentID == ContentID))
 	  Application->HaveContent = false;
 	else
-	  PacketHeader->Type.NAK = true;
+	  PacketHeader->Type.TypeFields.NAK = true;
 	  
 	PacketHeader->Length = sizeof(SideShow_PacketHeader_t);
 
@@ -484,7 +484,7 @@ static void SideShow_DeleteAllContent(SideShow_PacketHeader_t* const PacketHeade
 	if (Application != NULL)
 	  Application->HaveContent = false;
 	else
-	  PacketHeader->Type.NAK = true;	  
+	  PacketHeader->Type.TypeFields.NAK = true;	  
 
 	PacketHeader->Length = sizeof(SideShow_PacketHeader_t);
 
diff --git a/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommon.h b/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommon.h
index b801ecfa5..8a90c50cf 100644
--- a/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommon.h
+++ b/Demos/Device/Incomplete/Sideshow/Lib/SideshowCommon.h
@@ -85,7 +85,7 @@
 				int ErrorCode     : 6;
 				int NAK           : 1;
 				int Response      : 1;				
-			};
+			} TypeFields;
 		} SideShowPacketType_t;
 	
 		typedef struct
diff --git a/Demos/Device/Incomplete/Sideshow/Sideshow.c b/Demos/Device/Incomplete/Sideshow/Sideshow.c
index e99a26b36..f6ece61b0 100644
--- a/Demos/Device/Incomplete/Sideshow/Sideshow.c
+++ b/Demos/Device/Incomplete/Sideshow/Sideshow.c
@@ -122,7 +122,7 @@ void EVENT_USB_Device_UnhandledControlRequest(void)
 			{
 				void*    DescriptorPointer;
 				uint16_t DescriptorSize = USB_GetOSFeatureDescriptor(USB_ControlRequest.wValue, USB_ControlRequest.wIndex,
-				                                                     &DescriptorPointer, &DescriptorSize);
+				                                                     &DescriptorPointer);
 
 				if (DescriptorSize == NO_DESCRIPTOR)
 				  return;
diff --git a/Demos/Device/Incomplete/Sideshow/makefile b/Demos/Device/Incomplete/Sideshow/makefile
index f0782f183..1565b991e 100644
--- a/Demos/Device/Incomplete/Sideshow/makefile
+++ b/Demos/Device/Incomplete/Sideshow/makefile
@@ -179,7 +179,7 @@ EXTRAINCDIRS = $(LUFA_PATH)/
 #     gnu89 = c89 plus GCC extensions
 #     c99   = ISO C99 standard (not yet fully implemented)
 #     gnu99 = c99 plus GCC extensions
-CSTANDARD = -std=gnu99
+CSTANDARD = -std=c99
 
 
 # Place -D or -U options here for C sources
diff --git a/Demos/Device/Incomplete/TestAndMeasurement/makefile b/Demos/Device/Incomplete/TestAndMeasurement/makefile
index 856fc2bcb..94e697eae 100644
--- a/Demos/Device/Incomplete/TestAndMeasurement/makefile
+++ b/Demos/Device/Incomplete/TestAndMeasurement/makefile
@@ -173,7 +173,7 @@ EXTRAINCDIRS = $(LUFA_PATH)/
 #     gnu89 = c89 plus GCC extensions
 #     c99   = ISO C99 standard (not yet fully implemented)
 #     gnu99 = c99 plus GCC extensions
-CSTANDARD = -std=gnu99
+CSTANDARD = -std=c99
 
 
 # Place -D or -U options here for C sources
diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt
index 789cb898e..5a21f5140 100644
--- a/LUFA/ManPages/ChangeLog.txt
+++ b/LUFA/ManPages/ChangeLog.txt
@@ -434,6 +434,7 @@
   *    of device configurations can be defined statically
   *  - Removed VBUS events, as they are already exposed to the user application via the regular device connection and disconnection events
   *  - Renamed and altered existing events to properly separate out Host and Device mode events
+  *  - All demos switched over from GNU99 standards mode to C99 standards mode, to reduce the dependancies on GCC-only language extensions
   *
   *  <b>Fixed:</b>
   *  - Changed bootloaders to use FLASHEND rather than the existence of RAMPZ to determine if far FLASH pointers are needed to fix
diff --git a/Projects/LEDNotifier/LEDNotifier.c b/Projects/LEDNotifier/LEDNotifier.c
index da4ee9e5c..d1f4451e7 100644
--- a/Projects/LEDNotifier/LEDNotifier.c
+++ b/Projects/LEDNotifier/LEDNotifier.c
@@ -113,11 +113,11 @@ int main(void)
 	for (;;)
 	{
 		/* Read in next LED colour command from the host */
-		uint8_t ColorUpdate = fgetc(&USBSerialStream);
+		uint8_t ColourUpdate = fgetc(&USBSerialStream);
 		
 		/* Top 3 bits select the LED, bottom 5 control the brightness */
-		uint8_t Channel = (ColorUpdate & 0b11100000);
-		uint8_t Duty    = (ColorUpdate & 0b00011111);
+		uint8_t Channel = (ColourUpdate & 0b11100000);
+		uint8_t Duty    = (ColourUpdate & 0b00011111);
 		
 		if (Channel & (1 << 5))
 		  SoftPWM_Channel1_Duty = Duty;
-- 
cgit v1.2.3