1 // RUN: %clang_cc1 -triple x86_64-apple-macosx10.12.0 -fexceptions -std=c++17 -verify %s \
2 // RUN:   -DEXPECT_DEFINED
3 //
4 // RUN: %clang_cc1 -triple x86_64-apple-macosx10.12.0 -fexceptions -std=c++17 -verify %s \
5 // RUN:   -faligned-alloc-unavailable
6 //
7 // RUN: %clang_cc1 -triple x86_64-apple-macosx10.12.0 -fexceptions -std=c++17 -verify %s \
8 // RUN:   -faligned-allocation -faligned-alloc-unavailable
9 //
10 // RUN: %clang_cc1 -triple s390x-none-zos -fexceptions -std=c++17 -verify %s \
11 // RUN:   -DEXPECT_DEFINED
12 //
13 // RUN: %clang_cc1 -triple s390x-none-zos -fexceptions -std=c++17 -verify %s \
14 // RUN:   -faligned-alloc-unavailable
15 //
16 // RUN: %clang_cc1 -triple s390x-none-zos -fexceptions -std=c++17 -verify %s \
17 // RUN:   -faligned-allocation -faligned-alloc-unavailable
18 
19 // Test that __cpp_aligned_new is not defined when CC1 is passed
20 // -faligned-alloc-unavailable by the Darwin and the z/OS driver, even when
21 // aligned allocation is actually enabled.
22 
23 // expected-no-diagnostics
24 #ifdef EXPECT_DEFINED
25 # ifndef __cpp_aligned_new
26 #   error "__cpp_aligned_new" should be defined
27 # endif
28 #else
29 # ifdef __cpp_aligned_new
30 #   error "__cpp_aligned_new" should not be defined
31 # endif
32 #endif
33