diff options
-rw-r--r-- | include/clang/Sema/Initialization.h | 2 | ||||
-rw-r--r-- | lib/Parse/ParseDecl.cpp | 4 | ||||
-rw-r--r-- | test/Parser/cxx-default-delete.cpp | 8 |
3 files changed, 9 insertions, 5 deletions
diff --git a/include/clang/Sema/Initialization.h b/include/clang/Sema/Initialization.h index 36ffde9098..5fc6373acd 100644 --- a/include/clang/Sema/Initialization.h +++ b/include/clang/Sema/Initialization.h @@ -1,4 +1,4 @@ -//===--- SemaInit.h - Semantic Analysis for Initializers --------*- C++ -*-===// +//===--- Initialization.h - Semantic Analysis for Initializers --*- C++ -*-===// // // The LLVM Compiler Infrastructure // diff --git a/lib/Parse/ParseDecl.cpp b/lib/Parse/ParseDecl.cpp index aa587e7196..0c8a647f65 100644 --- a/lib/Parse/ParseDecl.cpp +++ b/lib/Parse/ParseDecl.cpp @@ -1282,8 +1282,8 @@ Decl *Parser::ParseDeclarationAfterDeclaratorAndAttributes(Declarator &D, Diag(ConsumeToken(), diag::err_deleted_non_function); } else if (Tok.is(tok::kw_default)) { if (D.isFunctionDeclarator()) - Diag(Tok, diag::err_default_delete_in_multiple_declaration) - << 1 /* delete */; + Diag(ConsumeToken(), diag::err_default_delete_in_multiple_declaration) + << 0 /* default */; else Diag(ConsumeToken(), diag::err_default_special_members); } else { diff --git a/test/Parser/cxx-default-delete.cpp b/test/Parser/cxx-default-delete.cpp index 9ace0acee8..df24b3d007 100644 --- a/test/Parser/cxx-default-delete.cpp +++ b/test/Parser/cxx-default-delete.cpp @@ -3,8 +3,12 @@ int i = delete; // expected-error{{only functions}} int j = default; // expected-error{{special member functions}} -int f() = delete, g; // expected-error{{standalone}} -int o, p() = delete; // expected-error{{standalone}} +int f() = delete, g; // expected-error{{'= delete' is a function definition}} +int o, p() = delete; // expected-error{{'= delete' is a function definition}} + +int q() = default, r; // expected-error{{only special member functions}} \ + // expected-error{{'= default' is a function definition}} +int s, t() = default; // expected-error{{'= default' is a function definition}} struct foo { foo() = default; |