]> granicus.if.org Git - clang/commit
Properly parse the 'default' and 'delete' keywords.
authorSean Hunt <scshunt@csclub.uwaterloo.ca>
Thu, 12 May 2011 06:15:49 +0000 (06:15 +0000)
committerSean Hunt <scshunt@csclub.uwaterloo.ca>
Thu, 12 May 2011 06:15:49 +0000 (06:15 +0000)
commite4246a633b13197634225971b25df0cbdcec0c5d
treef917d93ad86bce728cf83fb00b6b29937d3c24ed
parent1e23865d0e148a3951a9b418e57b7e0762dc3098
Properly parse the 'default' and 'delete' keywords.

They are actually grammatically considered definitions and parsed
accordingly.

This fixes the outstanding bugs regarding defaulting functions after
their declarations.

We now really nicely diagnose the following construct (try it!)

int foo() = delete, bar;

Still todo: Defaulted functions other than default constructors
            Test cases (including for the above construct)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131228 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Basic/DiagnosticCommonKinds.td
include/clang/Basic/DiagnosticParseKinds.td
include/clang/Basic/DiagnosticSemaKinds.td
include/clang/Parse/Parser.h
include/clang/Sema/Sema.h
lib/Parse/ParseCXXInlineMethods.cpp
lib/Parse/ParseDecl.cpp
lib/Parse/ParseDeclCXX.cpp
lib/Parse/Parser.cpp
lib/Sema/SemaDecl.cpp
lib/Sema/SemaDeclCXX.cpp