Commit ba05abd3 by Geoffrey Keating Committed by Geoffrey Keating

* doc/extend.texi (Empty Structures): New.

From-SVN: r65497
parent 15c812e3
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.
......
......@@ -436,6 +436,7 @@ extensions, accepted by GCC in C89 mode and in C++.
* 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.
......@@ -1358,6 +1359,21 @@ struct bar c = @{ @{ 1, @{ @} @} @}; // @r{Valid.}
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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment