diff options
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/Modules/cxx-templates.cpp | 10 | ||||
| -rw-r--r-- | clang/test/Modules/odr.cpp | 8 | ||||
| -rw-r--r-- | clang/test/Modules/redecl-add-after-load.cpp | 4 |
3 files changed, 11 insertions, 11 deletions
diff --git a/clang/test/Modules/cxx-templates.cpp b/clang/test/Modules/cxx-templates.cpp index 41b0f2cd92d..46c2f33ef15 100644 --- a/clang/test/Modules/cxx-templates.cpp +++ b/clang/test/Modules/cxx-templates.cpp @@ -1,7 +1,7 @@ // RUN: rm -rf %t // RUN: not %clang_cc1 -x objective-c++ -fmodules -fno-modules-error-recovery -fmodules-cache-path=%t -I %S/Inputs %s -std=c++11 -ast-dump-lookups | FileCheck %s --check-prefix=CHECK-GLOBAL // RUN: not %clang_cc1 -x objective-c++ -fmodules -fno-modules-error-recovery -fmodules-cache-path=%t -I %S/Inputs %s -std=c++11 -ast-dump-lookups -ast-dump-filter N | FileCheck %s --check-prefix=CHECK-NAMESPACE-N -// RUN: not %clang_cc1 -x objective-c++ -fmodules -fno-modules-error-recovery -fmodules-cache-path=%t -I %S/Inputs %s -std=c++11 -ast-dump -ast-dump-filter SomeTemplate | FileCheck %s --check-prefix=CHECK-DUMP +// RUN: not %clang_cc1 -x objective-c++ -fmodules -fno-modules-error-recovery -fmodules-cache-path=%t -I %S/Inputs %s -std=c++11 -ast-dump | FileCheck %s --check-prefix=CHECK-DUMP // RUN: %clang_cc1 -x objective-c++ -fmodules -fno-modules-error-recovery -fmodules-cache-path=%t -I %S/Inputs %s -verify -std=c++11 // RUN: %clang_cc1 -x objective-c++ -fmodules -fno-modules-error-recovery -fmodules-cache-path=%t -I %S/Inputs %s -verify -std=c++11 -DEARLY_IMPORT @@ -125,10 +125,9 @@ void g() { static_assert(Outer<int>::Inner<int>::f() == 1, ""); static_assert(Outer<int>::Inner<int>::g() == 2, ""); -// FIXME: We're too lazy in merging class definitions to find the definition -// of this function. -static_assert(MergeTemplateDefinitions<int>::f() == 1, ""); // expected-error {{constant expression}} expected-note {{undefined}} -// expected-note@cxx-templates-c.h:10 {{here}} +#ifndef EARLY_IMPORT +// FIXME: The textual inclusion above shouldn't cause this to fail! +static_assert(MergeTemplateDefinitions<int>::f() == 1, ""); static_assert(MergeTemplateDefinitions<int>::g() == 2, ""); RedeclaredAsFriend<int> raf1; @@ -141,6 +140,7 @@ MergeSpecializations<int[]>::partially_specialized_in_c spec_in_c_1; MergeSpecializations<char>::explicitly_specialized_in_a spec_in_a_2; MergeSpecializations<double>::explicitly_specialized_in_b spec_in_b_2; MergeSpecializations<bool>::explicitly_specialized_in_c spec_in_c_2; +#endif MergeAnonUnionMember<> maum_main; typedef DontWalkPreviousDeclAfterMerging<int> dwpdam_typedef_2; diff --git a/clang/test/Modules/odr.cpp b/clang/test/Modules/odr.cpp index 4ac257cd03a..120ca20e0a8 100644 --- a/clang/test/Modules/odr.cpp +++ b/clang/test/Modules/odr.cpp @@ -15,9 +15,9 @@ bool b = F<int>{0} == F<int>{1}; int x = f() + g(); // expected-note@a.h:5 {{definition has no member 'e2'}} -// expected-note@b.h:3 {{declaration of 'f' does not match}} -// expected-note@b.h:1 {{definition has no member 'n'}} +// expected-note@a.h:3 {{declaration of 'f' does not match}} +// expected-note@a.h:1 {{definition has no member 'm'}} // expected-error@b.h:5 {{'E::e2' from module 'b' is not present in definition of 'E' in module 'a'}} -// expected-error@a.h:3 {{'Y::f' from module 'a' is not present in definition of 'Y' in module 'b'}} -// expected-error@a.h:2 {{'Y::n' from module 'a' is not present in definition of 'Y' in module 'b'}} +// expected-error@b.h:3 {{'Y::f' from module 'b' is not present in definition of 'Y' in module 'a'}} +// expected-error@b.h:2 {{'Y::m' from module 'b' is not present in definition of 'Y' in module 'a'}} diff --git a/clang/test/Modules/redecl-add-after-load.cpp b/clang/test/Modules/redecl-add-after-load.cpp index 53e54c84cc3..68deaf8b4ef 100644 --- a/clang/test/Modules/redecl-add-after-load.cpp +++ b/clang/test/Modules/redecl-add-after-load.cpp @@ -29,7 +29,7 @@ struct D { static constexpr int function(); // expected-note {{here}} }; typedef D::A DB; -constexpr int D_test(bool b) { return b ? D::variable : D::function(); } // expected-note {{undefined}} +constexpr int D_test(bool b) { return b ? D::variable : D::function(); } // expected-note {{subexpression}} expected-note {{undefined}} #endif @import redecl_add_after_load; @@ -54,6 +54,6 @@ constexpr int merged_struct_variable_test = D_test(true); constexpr int merged_struct_function_test = D_test(false); #ifndef IMPORT_DECLS // expected-error@-4 {{incomplete}} -// @-4: definition of D::variable must be emitted, so it gets imported eagerly +// expected-error@-4 {{constant}} expected-note@-4 {{in call to}} // expected-error@-4 {{constant}} expected-note@-4 {{in call to}} #endif |

