-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Closed
Labels
bugzillaIssues migrated from bugzillaIssues migrated from bugzillaclang:codegenIR generation bugs: mangling, exceptions, etc.IR generation bugs: mangling, exceptions, etc.compile-failUse [accepts-invalid] and [rejects-valid] insteadUse [accepts-invalid] and [rejects-valid] instead
Description
Bugzilla Link | 3980 |
Resolution | FIXED |
Resolved on | Apr 16, 2009 02:13 |
Version | unspecified |
OS | Linux |
Attachments | Allow tentative definitions before type is fully known, Correct testcase for patch |
Reporter | LLVM Bugzilla Contributor |
Extended Description
When processing a tentative definition with a currently incomplete type, clang tries to emit the code immediately and fails.
E.g.
struct foo x;
struct foo { int a; };
It should be equivalent to a definition with the type as known at the end of the file (C99 6.9.2p2 I think).
Daniel Dunbar made a brief comment on the problem at http://llvm.org/bugs/show_bug.cgi?id=3461#c5.
Metadata
Metadata
Assignees
Labels
bugzillaIssues migrated from bugzillaIssues migrated from bugzillaclang:codegenIR generation bugs: mangling, exceptions, etc.IR generation bugs: mangling, exceptions, etc.compile-failUse [accepts-invalid] and [rejects-valid] insteadUse [accepts-invalid] and [rejects-valid] instead