public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/19538] New: Missing diagnostic for typedef name in elaborated type specifier
@ 2005-01-20  1:51 austern at apple dot com
  2005-01-20  1:57 ` [Bug c++/19538] " pinskia at gcc dot gnu dot org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: austern at apple dot com @ 2005-01-20  1:51 UTC (permalink / raw)
  To: gcc-bugs

Consider the following code sample:

struct A { };
typedef struct A A;
struct A a;                     // [1]

struct wrapper {
  struct B { };
  typedef struct B B;
  struct B b;                   // [2]
};

Mainline gives an error for line [2], but not for line [1].  My reading of the standard is that there 
shouldn't be any difference.  In both cases we're using an elaborated type specifier with a name that 
resolves to a typedef-name.  A program that does that is ill formed, so the compiler is required to 
admit a diagnostic.  We're doing that for line [2], but we're failing to do it for line [1].

Relevant passages in the standard: 3.4.4/2, 7.1.3/4, 7.1.5.3/2.

-- 
           Summary: Missing diagnostic for typedef name in elaborated type
                    specifier
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: austern at apple dot com
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: powerpc-apple-darwin7.7.0
  GCC host triplet: powerpc-apple-darwin7.7.0
GCC target triplet: powerpc-apple-darwin7.7.0


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


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

* [Bug c++/19538] Missing diagnostic for typedef name in elaborated type specifier
  2005-01-20  1:51 [Bug c++/19538] New: Missing diagnostic for typedef name in elaborated type specifier austern at apple dot com
@ 2005-01-20  1:57 ` pinskia at gcc dot gnu dot org
  2005-01-24 18:06 ` austern at apple dot com
  2005-04-25  2:22 ` [Bug c++/19538] [DR 407] " pinskia at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-20  1:57 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-20 01:56 -------
Confirmed.  [2] was PR 11036 by the way.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |accepts-invalid, diagnostic
   Last reconfirmed|0000-00-00 00:00:00         |2005-01-20 01:56:59
               date|                            |


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


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

* [Bug c++/19538] Missing diagnostic for typedef name in elaborated type specifier
  2005-01-20  1:51 [Bug c++/19538] New: Missing diagnostic for typedef name in elaborated type specifier austern at apple dot com
  2005-01-20  1:57 ` [Bug c++/19538] " pinskia at gcc dot gnu dot org
@ 2005-01-24 18:06 ` austern at apple dot com
  2005-04-25  2:22 ` [Bug c++/19538] [DR 407] " pinskia at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: austern at apple dot com @ 2005-01-24 18:06 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From austern at apple dot com  2005-01-24 18:06 -------
I've raised this issue on the C++ standardization committee's core language reflector.  I now find it a 
little less clear than I did before.  This is closely related to open issue 407.  See http://www.open-
std.org/jtc1/sc22/wg21/docs/cwg_active.html#407

-- 


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


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

* [Bug c++/19538] [DR 407] Missing diagnostic for typedef name in elaborated type specifier
  2005-01-20  1:51 [Bug c++/19538] New: Missing diagnostic for typedef name in elaborated type specifier austern at apple dot com
  2005-01-20  1:57 ` [Bug c++/19538] " pinskia at gcc dot gnu dot org
  2005-01-24 18:06 ` austern at apple dot com
@ 2005-04-25  2:22 ` pinskia at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-04-25  2:22 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |SUSPENDED
            Summary|Missing diagnostic for      |[DR 407] Missing diagnostic
                   |typedef name in elaborated  |for typedef name in
                   |type specifier              |elaborated type specifier


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


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

end of thread, other threads:[~2005-04-25  2:22 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-01-20  1:51 [Bug c++/19538] New: Missing diagnostic for typedef name in elaborated type specifier austern at apple dot com
2005-01-20  1:57 ` [Bug c++/19538] " pinskia at gcc dot gnu dot org
2005-01-24 18:06 ` austern at apple dot com
2005-04-25  2:22 ` [Bug c++/19538] [DR 407] " pinskia at gcc dot gnu dot org

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).