diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/SemaCXX/alignof-sizeof-reference.cpp | 6 | ||||
-rw-r--r-- | test/SemaCXX/attr-cxx0x.cpp | 6 |
2 files changed, 7 insertions, 5 deletions
diff --git a/test/SemaCXX/alignof-sizeof-reference.cpp b/test/SemaCXX/alignof-sizeof-reference.cpp index ccdf45e52d..d76fcf55c2 100644 --- a/test/SemaCXX/alignof-sizeof-reference.cpp +++ b/test/SemaCXX/alignof-sizeof-reference.cpp @@ -4,8 +4,10 @@ struct s0; // expected-note {{forward declaration}} char ar[sizeof(s0&)]; // expected-error {{invalid application of 'sizeof' to an incomplete type}} void test() { char &r = ar[0]; - static_assert(alignof(r) == 1, "bad alignment"); + static_assert(alignof(r) == 1, "bad alignment"); // expected-warning {{GNU extension}} + static_assert(alignof(char&) == 1, "bad alignment"); static_assert(sizeof(r) == 1, "bad size"); + static_assert(sizeof(char&) == 1, "bad size"); } void f(); // expected-note{{possible target for call}} @@ -18,5 +20,5 @@ void g() { template<typename T> void f_template(); // expected-note{{possible target for call}} template<typename T> void f_template(T*); // expected-note{{possible target for call}} void rdar9659191() { - (void)alignof(f_template<int>); // expected-error{{reference to overloaded function could not be resolved; did you mean to call it?}} + (void)alignof(f_template<int>); // expected-error{{reference to overloaded function could not be resolved; did you mean to call it?}} expected-warning {{GNU extension}} } diff --git a/test/SemaCXX/attr-cxx0x.cpp b/test/SemaCXX/attr-cxx0x.cpp index c2576e9b0e..d038e637f4 100644 --- a/test/SemaCXX/attr-cxx0x.cpp +++ b/test/SemaCXX/attr-cxx0x.cpp @@ -28,9 +28,9 @@ template <unsigned... A> alignas(A...) struct align_class_temp_pack_expr {}; // typedef char align_typedef alignas(8); // expected-error {{'alignas' attribute only applies to variables, functions and tag types}} template<typename T> using align_alias_template = align_typedef alignas(8); // expected-error {{'alignas' attribute cannot be applied to types}} -static_assert(alignof(align_big) == alignof(int), "k's alignment is wrong"); -static_assert(alignof(align_small) == 1, "j's alignment is wrong"); -static_assert(alignof(align_multiple) == 8, "l's alignment is wrong"); +static_assert(alignof(align_big) == alignof(int), "k's alignment is wrong"); // expected-warning{{'alignof' applied to an expression is a GNU extension}} +static_assert(alignof(align_small) == 1, "j's alignment is wrong"); // expected-warning{{'alignof' applied to an expression is a GNU extension}} +static_assert(alignof(align_multiple) == 8, "l's alignment is wrong"); // expected-warning{{'alignof' applied to an expression is a GNU extension}} static_assert(alignof(align_member) == 8, "quuux's alignment is wrong"); static_assert(sizeof(align_member) == 8, "quuux's size is wrong"); static_assert(alignof(align_class_template<8>) == 8, "template's alignment is wrong"); |