From 2fbebc713bf06661a0181a47a096b8d2f5770453 Mon Sep 17 00:00:00 2001
From: Joseph Myers <jsm@polyomino.org.uk>
Date: Fri, 24 Sep 2004 21:29:55 +0100
Subject: [PATCH] re PR c/12802 (-fms-extensions documentation problem)

	PR c/12802
	* doc/extend.texi (Unnamed Fields): Remove "." from end of long
	title.  Document interaction with -fms-extensions.
	* doc/invoke.texi (-fms-extensions): Refer to Unnamed Fields
	section.

From-SVN: r88071
---
 gcc/ChangeLog       |  8 ++++++++
 gcc/doc/extend.texi | 11 ++++++++++-
 gcc/doc/invoke.texi |  4 ++++
 3 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 52be1847a041..ddfa56b14408 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2004-09-24  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+	PR c/12802
+	* doc/extend.texi (Unnamed Fields): Remove "." from end of long
+	title.  Document interaction with -fms-extensions.
+	* doc/invoke.texi (-fms-extensions): Refer to Unnamed Fields
+	section.
+
 2004-09-24  Joseph S. Myers  <jsm@polyomino.org.uk>
 
 	PR c/12713
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index f7f52f186b0f..ded154fd3188 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -8308,7 +8308,7 @@ multiple @code{#pragma pack(@var{n})} instances and finalized by a single
 @end enumerate
 
 @node Unnamed Fields
-@section Unnamed struct/union fields within structs/unions.
+@section Unnamed struct/union fields within structs/unions
 @cindex struct
 @cindex union
 
@@ -8348,6 +8348,15 @@ It is ambiguous which @code{a} is being referred to with @samp{foo.a}.
 Such constructs are not supported and must be avoided.  In the future,
 such constructs may be detected and treated as compilation errors.
 
+@opindex fms-extensions
+Unless @option{-fms-extensions} is used, the unnamed field must be a
+structure or union definition without a tag (for example, @samp{struct
+@{ int a; @};}).  If @option{-fms-extensions} is used, the field may
+also be a definition with a tag such as @samp{struct foo @{ int a;
+@};}, a reference to a previously defined structure or union such as
+@samp{struct foo;}, or a reference to a @code{typedef} name for a
+previously defined structure or union type.
+
 @node Thread-Local
 @section Thread-Local Storage
 @cindex Thread-Local Storage
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index e86677d3ecc7..33d7b9834002 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -1223,6 +1223,10 @@ freestanding and hosted environments.
 @opindex fms-extensions
 Accept some non-standard constructs used in Microsoft header files.
 
+Some cases of unnamed fields in structures and unions are only
+accepted with this option.  @xref{Unnamed Fields,,Unnamed struct/union
+fields within structs/unions}, for details.
+
 @item -trigraphs
 @opindex trigraphs
 Support ISO C trigraphs.  The @option{-ansi} option (and @option{-std}
-- 
GitLab