? Makefile
? avr-libc.spec
? avr-obj
? conf7696.dir
? conf7696.file
? config.h
? config.log
? config.status
? log
? stamp-h1
? common/Makefile
? crt1/Makefile
? devtools/Makefile
? doc/Makefile
? doc/api/Makefile
? doc/examples/Makefile
? include/Makefile
? include/avr/Makefile
? include/avr/avr.rar
? include/avr/power.h.new
? include/avr/version.h
? include/compat/Makefile
? include/util/Makefile
? libc/Makefile
? libc/misc/Makefile
? libc/pmstring/Makefile
? libc/stdio/Makefile
? libc/stdlib/Makefile
? libc/string/Makefile
? libm/Makefile
? libm/fplib/Makefile
? scripts/Makefile
? scripts/avr-man
Index: ChangeLog
===================================================================
RCS file: /sources/avr-libc/avr-libc/ChangeLog,v
retrieving revision 1.1157
diff -U 3 -r1.1157 ChangeLog
--- ChangeLog	15 Aug 2009 19:29:40 -0000	1.1157
+++ ChangeLog	17 Aug 2009 12:02:49 -0000
@@ -1,3 +1,20 @@
+
+2009-08-17  Anitha Boyapati  <anitha.boyapati@atmel.com>
+
+	* include/avr/iox128a1.h: Add '__extension__' to generation of 
+	_WORDREGISTER and _DWORDREGISTER macros. Fix for bug #27201
+	* include/avr/iox128a3.h: Same.
+	* include/avr/iox128d3.h: Same.
+	* include/avr/iox16a4.h: Same.
+	* include/avr/iox16d4.h: Same.
+	* include/avr/iox192a3.h: Same.
+	* include/avr/iox256a3.h: Same.
+	* include/avr/iox256a3b.h: Same.
+	* include/avr/iox32a4.h: Same.
+	* include/avr/iox32d4.h: Same.
+	* include/avr/iox64a1.h: Same.
+	* include/avr/iox64a3.h: Same.
+
 2009-08-15  Anitha Boyapati  <anitha.boyapati@atmel.com>
 
 	Fix for WinAVR bug #2812125. 
Index: NEWS
===================================================================
RCS file: /sources/avr-libc/avr-libc/NEWS,v
retrieving revision 1.376
diff -U 3 -r1.376 NEWS
--- NEWS	15 Aug 2009 19:29:41 -0000	1.376
+++ NEWS	17 Aug 2009 12:02:50 -0000
@@ -101,6 +101,7 @@
   [#26809] Some common math constants missing in math.h
   [#26840] Missing #define in iom32m1.h
   [#26876] include io.h into fuse.h
+  [#27201] _WORDREGISTER in xmega headers does not work in C99 mode
   
 * Other changes:
 
Index: include/avr/iox128a1.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox128a1.h,v
retrieving revision 1.14
diff -U 3 -r1.14 iox128a1.h
--- include/avr/iox128a1.h	20 Mar 2009 15:48:04 -0000	1.14
+++ include/avr/iox128a1.h	17 Aug 2009 12:02:53 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox128a3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox128a3.h,v
retrieving revision 1.7
diff -U 3 -r1.7 iox128a3.h
--- include/avr/iox128a3.h	20 Mar 2009 15:48:04 -0000	1.7
+++ include/avr/iox128a3.h	17 Aug 2009 12:02:57 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox128d3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox128d3.h,v
retrieving revision 1.1
diff -U 3 -r1.1 iox128d3.h
--- include/avr/iox128d3.h	16 Apr 2009 16:12:05 -0000	1.1
+++ include/avr/iox128d3.h	17 Aug 2009 12:02:59 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox16a4.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox16a4.h,v
retrieving revision 1.4
diff -U 3 -r1.4 iox16a4.h
--- include/avr/iox16a4.h	20 Mar 2009 15:48:04 -0000	1.4
+++ include/avr/iox16a4.h	17 Aug 2009 12:03:02 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox16d4.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox16d4.h,v
retrieving revision 1.3
diff -U 3 -r1.3 iox16d4.h
--- include/avr/iox16d4.h	20 Mar 2009 15:48:04 -0000	1.3
+++ include/avr/iox16d4.h	17 Aug 2009 12:03:05 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox192a3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox192a3.h,v
retrieving revision 1.1
diff -U 3 -r1.1 iox192a3.h
--- include/avr/iox192a3.h	20 Mar 2009 05:54:41 -0000	1.1
+++ include/avr/iox192a3.h	17 Aug 2009 12:03:08 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox192d3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox192d3.h,v
retrieving revision 1.1
diff -U 3 -r1.1 iox192d3.h
--- include/avr/iox192d3.h	2 Aug 2009 13:55:46 -0000	1.1
+++ include/avr/iox192d3.h	17 Aug 2009 12:03:10 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+   __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox256a3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox256a3.h,v
retrieving revision 1.7
diff -U 3 -r1.7 iox256a3.h
--- include/avr/iox256a3.h	20 Mar 2009 15:48:04 -0000	1.7
+++ include/avr/iox256a3.h	17 Aug 2009 12:03:13 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+  __extension__  union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__   union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox256a3b.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox256a3b.h,v
retrieving revision 1.7
diff -U 3 -r1.7 iox256a3b.h
--- include/avr/iox256a3b.h	20 Mar 2009 15:48:04 -0000	1.7
+++ include/avr/iox256a3b.h	17 Aug 2009 12:03:16 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+   __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox256d3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox256d3.h,v
retrieving revision 1.1
diff -U 3 -r1.1 iox256d3.h
--- include/avr/iox256d3.h	16 Apr 2009 16:12:05 -0000	1.1
+++ include/avr/iox256d3.h	17 Aug 2009 12:03:18 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox32a4.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox32a4.h,v
retrieving revision 1.5
diff -U 3 -r1.5 iox32a4.h
--- include/avr/iox32a4.h	20 Mar 2009 15:48:05 -0000	1.5
+++ include/avr/iox32a4.h	17 Aug 2009 12:03:22 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox32d4.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox32d4.h,v
retrieving revision 1.3
diff -U 3 -r1.3 iox32d4.h
--- include/avr/iox32d4.h	20 Mar 2009 15:48:05 -0000	1.3
+++ include/avr/iox32d4.h	17 Aug 2009 12:03:24 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox64a1.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox64a1.h,v
retrieving revision 1.14
diff -U 3 -r1.14 iox64a1.h
--- include/avr/iox64a1.h	20 Mar 2009 15:48:05 -0000	1.14
+++ include/avr/iox64a1.h	17 Aug 2009 12:03:28 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox64a3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox64a3.h,v
retrieving revision 1.7
diff -U 3 -r1.7 iox64a3.h
--- include/avr/iox64a3.h	20 Mar 2009 15:48:05 -0000	1.7
+++ include/avr/iox64a3.h	17 Aug 2009 12:03:31 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+   __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
Index: include/avr/iox64d3.h
===================================================================
RCS file: /sources/avr-libc/avr-libc/include/avr/iox64d3.h,v
retrieving revision 1.1
diff -U 3 -r1.1 iox64d3.h
--- include/avr/iox64d3.h	20 Apr 2009 17:37:00 -0000	1.1
+++ include/avr/iox64d3.h	17 Aug 2009 12:03:33 -0000
@@ -92,7 +92,7 @@
 #undef _WORDREGISTER
 #endif
 #define _WORDREGISTER(regname)   \
-    union \
+    __extension__ union \
     { \
         register16_t regname; \
         struct \
@@ -106,7 +106,7 @@
 #undef _DWORDREGISTER
 #endif
 #define _DWORDREGISTER(regname)  \
-    union \
+   __extension__  union \
     { \
         register32_t regname; \
         struct \
