Richard Smith
a60a6db73f
When we see something that looks like a constructor with a return type, only issue one error, not two.
...
llvm-svn: 241424
2015-07-06 01:04:39 +00:00
Richard Smith
0b3a46247e
PR21437, final part of DR1330: delay-parsing of exception-specifications. This
...
is a re-commit of Doug's r154844 (modernized and updated to fit into current
Clang).
llvm-svn: 221918
2014-11-13 20:01:57 +00:00
Richard Smith
38f7c7bca5
Disable our non-standard delayed parsing of exception specifications. Delaying
...
the parsing of such things appears to be a conforming extension, but it breaks
libstdc++4.7's std::pair.
llvm-svn: 155975
2012-05-02 01:29:43 +00:00
Richard Smith
4f402bd985
PR12688: ParseCXXClassMemberDeclaration's sometimes-null ThisDecl takes another
...
victim. Don't crash if we have a delay-parsed exception specification for a
class member which is invalid in a way which precludes building a FunctionDecl.
llvm-svn: 155788
2012-04-29 07:31:09 +00:00
Richard Smith
2cc2b46683
Don't try to delay parsing the exception specification for a data member of a
...
class; we would never actually parse it and attach it to the type.
llvm-svn: 155426
2012-04-24 05:48:42 +00:00
Richard Smith
4e42bc8365
PR12629: Cope with parenthesized function types when attaching a delayed
...
exception specification to a function.
llvm-svn: 155424
2012-04-24 05:06:35 +00:00
Douglas Gregor
433e05306f
Implement the last part of C++ [class.mem]p2, delaying the parsing of
...
exception specifications on member functions until after the closing
'}' for the containing class. This allows, for example, a member
function to throw an instance of its own class. Fixes PR12564 and a
fairly embarassing oversight in our C++98/03 support.
llvm-svn: 154844
2012-04-16 18:27:27 +00:00
John McCall
5476666d17
Diagnose attempts to implicitly instantiate a template before it is
...
fully defined. Somehow this escaped notice for a very long time.
llvm-svn: 130298
2011-04-27 06:46:31 +00:00