http://llvm.org/bugs/show_bug.cgi?id=3184
Summary: Elaborated type specifiers in argument lists/return
types aren't declarations
Product: clang
Version: unspecified
Platform: All
OS/Version: All
Status: NEW
Keywords: compile-fail
Severity: minor
Priority: P2
Component: Semantic Analyzer
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]
CC: [email protected]
C++ 3.3.1p5 says:
[...] for an elaborated-type-specifier of the form
class-key identifier
if the e-t-s is used in the decl-specifier-seq or
parameter-declaration-clause
of a function defined in namespace scope, the identifier is declared as a
class-name in the namespace that contains the declaration;
In other words, the following should compile:
void f(class A*);
void g()
{
A* a;
}
G++ compiles it, clang does not.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs