[cfe-commits] r72580 - in /cfe/trunk: include/clang/Basic/DiagnosticSemaKinds.td include/clang/Parse/DeclSpec.h include/clang/Parse/Parser.h lib/Parse/DeclSpec.cpp lib/Parse/ParseDecl.cpp lib/Parse/ParseDeclCXX.cpp lib/Parse/ParseExpr.cpp lib/Sem
Sebastian Redl
sebastian.redl at getdesigned.at
Fri May 29 11:48:57 PDT 2009
Eli Friedman wrote:
> On Fri, May 29, 2009 at 11:02 AM, Sebastian
> Redl<sebastian.redl at getdesigned.at> wrote:
>
>> + // C++ 15.4p2: A type denoted in an exception-specification shall not denote
>> + // an incomplete type a pointer or reference to an incomplete type, other
>> + // than (cv) void*.
>> + // The standard does not mention member pointers, but it has to mean them too.
>>
>
> Despite this comment, neither gcc nor comeau rejects "struct i; void
> j() throw(i (i::*));".
>
Hmm ... come to think of it, the likely reason incomplete types are
forbidden there is that the compiler lacks information about valid
conversions for them. But there are no valid conversions on the pointee
for member pointers anyway.
Does this mean the container type should be complete?
Sebastian
More information about the cfe-commits
mailing list