public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/52182] New: unnamed structs/unions are supported by ISO C99
@ 2012-02-09  9:20 jan.kratochvil at redhat dot com
  2012-02-09 17:24 ` [Bug c/52182] " joseph at codesourcery dot com
  2012-02-09 17:43 ` jan.kratochvil at redhat dot com
  0 siblings, 2 replies; 3+ messages in thread
From: jan.kratochvil at redhat dot com @ 2012-02-09  9:20 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52182

             Bug #: 52182
           Summary: unnamed structs/unions are supported by ISO C99
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: jan.kratochvil@redhat.com


http://gcc.gnu.org/onlinedocs/gcc/Unnamed-Fields.html#Unnamed-Fields
says
"As permitted by ISO C11"

and also:
echo 'struct { int a; struct { int b; }; } s;'|gcc -c -x c - -Wall -std=c99
-pedantic
<stdin>:1:34: warning: ISO C99 doesn’t support unnamed structs/unions
[-pedantic]
FAIL: gcc (GCC) 4.6.3 20120209 (prerelease)
FAIL: gcc (GCC) 4.7.0 20120209 (experimental)

plus
FAIL: gcc (GCC) 4.4.7 20120209 (prerelease)
FAIL: gcc (GCC) 4.5.4 20120209 (prerelease)
print
<stdin>:1:34: warning: declaration does not declare anything

But ISO C99 says:
  A structure type describes a sequentially allocated nonempty set of member
  objects (and, in certain circumstances, an incomplete array), each of which
  has an optionally specified name and possibly distinct type.
         ^^^^^^^^^^^^^^^^^^^^^^^^^
  A union type describes an overlapping nonempty set of member objects, each of
  which has an optionally specified name and possibly distinct type.
               ^^^^^^^^^^^^^^^^^^^^^^^^^

(I agree ISO C90 spec still did not support unnamed fields.)


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug c/52182] unnamed structs/unions are supported by ISO C99
  2012-02-09  9:20 [Bug c/52182] New: unnamed structs/unions are supported by ISO C99 jan.kratochvil at redhat dot com
@ 2012-02-09 17:24 ` joseph at codesourcery dot com
  2012-02-09 17:43 ` jan.kratochvil at redhat dot com
  1 sibling, 0 replies; 3+ messages in thread
From: joseph at codesourcery dot com @ 2012-02-09 17:24 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52182

--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2012-02-09 17:23:59 UTC ---
On Thu, 9 Feb 2012, jan.kratochvil at redhat dot com wrote:

> But ISO C99 says:
>   A structure type describes a sequentially allocated nonempty set of member
>   objects (and, in certain circumstances, an incomplete array), each of which
>   has an optionally specified name and possibly distinct type.
>          ^^^^^^^^^^^^^^^^^^^^^^^^^

The name is only optional for bit-fields.  See the syntax for 
struct-declaration and struct-declarator.  The difference in C11 is that a 
struct-declarator-list is optional in a struct-declaration.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug c/52182] unnamed structs/unions are supported by ISO C99
  2012-02-09  9:20 [Bug c/52182] New: unnamed structs/unions are supported by ISO C99 jan.kratochvil at redhat dot com
  2012-02-09 17:24 ` [Bug c/52182] " joseph at codesourcery dot com
@ 2012-02-09 17:43 ` jan.kratochvil at redhat dot com
  1 sibling, 0 replies; 3+ messages in thread
From: jan.kratochvil at redhat dot com @ 2012-02-09 17:43 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52182

Jan Kratochvil <jan.kratochvil at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |INVALID

--- Comment #2 from Jan Kratochvil <jan.kratochvil at redhat dot com> 2012-02-09 17:42:30 UTC ---
That there can be struct { int:10; }, OK.  Thanks for the explanation.


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-02-09 17:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-02-09  9:20 [Bug c/52182] New: unnamed structs/unions are supported by ISO C99 jan.kratochvil at redhat dot com
2012-02-09 17:24 ` [Bug c/52182] " joseph at codesourcery dot com
2012-02-09 17:43 ` jan.kratochvil at redhat dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).