+2003-04-11 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/extend.texi (Empty Structures): New.
+
2003-04-11 Eric Christopher <echristo@redhat.com>
* emit-rtl.c (gen_rtx): Fix typos.
* Hex Floats:: Hexadecimal floating-point constants.
* Zero Length:: Zero-length arrays.
* Variable Length:: Arrays whose length is computed at run time.
+* Empty Structures:: Structures with no members.
* Variadic Macros:: Macros with a variable number of arguments.
* Escaped Newlines:: Slightly looser rules for escaped newlines.
* Multi-line Strings:: String literals with embedded newlines.
struct foo d[1] = @{ @{ 1 @{ 2, 3, 4 @} @} @}; // @r{Invalid.}
@end example
+@node Empty Structures
+@section Structures With No Members
+@cindex empty structures
+@cindex zero-size structures
+
+GCC permits a C structure to have no members:
+
+@example
+struct empty @{
+@};
+@end example
+
+The structure will have size zero. In C++, empty structures are part
+of the language, and the language standard says they have size 1.
+
@node Variable Length
@section Arrays of Variable Length
@cindex variable-length arrays