1*d32fb5e5SSean Perry // Tests that the z/OS toolchain adds system includes to its search path. 2*d32fb5e5SSean Perry 3*d32fb5e5SSean Perry // RUN: %clangxx -c -### %s --target=s390x-ibm-zos 2>&1 \ 4*d32fb5e5SSean Perry // RUN: | FileCheck %s 5*d32fb5e5SSean Perry 6*d32fb5e5SSean Perry // CHECK: "-D_UNIX03_WITHDRAWN" 7*d32fb5e5SSean Perry // CHECK-SAME: "-D_OPEN_DEFAULT" 8*d32fb5e5SSean Perry // CHECK-SAME: "-D_XOPEN_SOURCE=600" 9*d32fb5e5SSean Perry // CHECK-SAME: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" 10*d32fb5e5SSean Perry // CHECK-SAME: "-internal-isystem" "{{.*}}{{/|\\\\}}bin{{/|\\\\}}..{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1" 11*d32fb5e5SSean Perry // CHECK-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include{{(/|\\\\)}}zos_wrappers" 12*d32fb5e5SSean Perry // CHECK-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include" 13*d32fb5e5SSean Perry // CHECK-SAME: "-internal-isystem" "/usr/include" 14*d32fb5e5SSean Perry // CHECK-SAME: "-fshort-enums" 15*d32fb5e5SSean Perry // CHECK-SAME: "-fno-signed-char" 16*d32fb5e5SSean Perry // CHECK-SAME: "-fno-signed-wchar" 17*d32fb5e5SSean Perry 18*d32fb5e5SSean Perry // RUN: %clangxx -c -### -mzos-sys-include=/ABC/DEF %s 2>&1 \ 19*d32fb5e5SSean Perry // RUN: --target=s390x-ibm-zos \ 20*d32fb5e5SSean Perry // RUN: | FileCheck --check-prefixes=CHECK2 %s 21*d32fb5e5SSean Perry 22*d32fb5e5SSean Perry // CHECK2: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" 23*d32fb5e5SSean Perry // CHECK2-SAME: "-internal-isystem" "{{.*}}{{/|\\\\}}bin{{/|\\\\}}..{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1" 24*d32fb5e5SSean Perry // CHECK2-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include{{(/|\\\\)}}zos_wrappers" 25*d32fb5e5SSean Perry // CHECK2-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include" 26*d32fb5e5SSean Perry // CHECK2-SAME: "-internal-isystem" "{{/|\\\\}}ABC{{/|\\\\}}DEF" 27*d32fb5e5SSean Perry // CHECK2-NOT: "-internal-isystem" "/usr/include" 28*d32fb5e5SSean Perry // CHECK2-SAME: "-fshort-enums" 29*d32fb5e5SSean Perry // CHECK2-SAME: "-fno-signed-char" 30*d32fb5e5SSean Perry // CHECK2-SAME: "-fno-signed-wchar" 31*d32fb5e5SSean Perry 32*d32fb5e5SSean Perry // RUN: %clangxx -c -### -nostdinc %s 2>&1 \ 33*d32fb5e5SSean Perry // RUN: --target=s390x-ibm-zos \ 34*d32fb5e5SSean Perry // RUN: | FileCheck --check-prefixes=CHECK3 %s 35*d32fb5e5SSean Perry 36*d32fb5e5SSean Perry // CHECK3: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" 37*d32fb5e5SSean Perry // CHECK3-NOT: "-internal-isystem" "{{.*}}/bin/../include/c++/v1" 38*d32fb5e5SSean Perry // CHECK3-NOT: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include{{(/|\\\\)}}zos_wrappers" 39*d32fb5e5SSean Perry // CHECK3-NOT: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include" 40*d32fb5e5SSean Perry // CHECK3-NOT: "-internal-isystem" "/usr/include" 41*d32fb5e5SSean Perry // CHECK3-SAME: "-fshort-enums" 42*d32fb5e5SSean Perry // CHECK3-SAME: "-fno-signed-char" 43*d32fb5e5SSean Perry // CHECK3-SAME: "-fno-signed-wchar" 44*d32fb5e5SSean Perry 45*d32fb5e5SSean Perry // RUN: %clangxx -c -### -nostdinc++ %s 2>&1 \ 46*d32fb5e5SSean Perry // RUN: --target=s390x-ibm-zos \ 47*d32fb5e5SSean Perry // RUN: | FileCheck --check-prefixes=CHECK4 %s 48*d32fb5e5SSean Perry 49*d32fb5e5SSean Perry // CHECK4: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" 50*d32fb5e5SSean Perry // CHECK4-NOT: "-internal-isystem" "{{.*}}{{/|\\\\}}bin{{/|\\\\}}..{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1" 51*d32fb5e5SSean Perry // CHECK4-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include{{(/|\\\\)}}zos_wrappers" 52*d32fb5e5SSean Perry // CHECK4-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include" 53*d32fb5e5SSean Perry // CHECK4-SAME: "-internal-isystem" "/usr/include" 54*d32fb5e5SSean Perry // CHECK4-SAME: "-fshort-enums" 55*d32fb5e5SSean Perry // CHECK4-SAME: "-fno-signed-char" 56*d32fb5e5SSean Perry // CHECK4-SAME: "-fno-signed-wchar" 57*d32fb5e5SSean Perry 58*d32fb5e5SSean Perry // RUN: %clangxx -c -### -nostdlibinc %s 2>&1 \ 59*d32fb5e5SSean Perry // RUN: --target=s390x-ibm-zos \ 60*d32fb5e5SSean Perry // RUN: | FileCheck --check-prefixes=CHECK5 %s 61*d32fb5e5SSean Perry 62*d32fb5e5SSean Perry // CHECK5: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" 63*d32fb5e5SSean Perry // CHECK5-NOT: "-internal-isystem" "{{.*}}{{/|\\\\}}bin{{/|\\\\}}..{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1" 64*d32fb5e5SSean Perry // CHECK5-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include{{(/|\\\\)}}zos_wrappers" 65*d32fb5e5SSean Perry // CHECK5-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include" 66*d32fb5e5SSean Perry // CHECK5-SAME: "-internal-isystem" "/usr/include" 67*d32fb5e5SSean Perry // CHECK5-SAME: "-fshort-enums" 68*d32fb5e5SSean Perry // CHECK5-SAME: "-fno-signed-char" 69*d32fb5e5SSean Perry // CHECK5-SAME: "-fno-signed-wchar" 70*d32fb5e5SSean Perry 71*d32fb5e5SSean Perry // RUN: %clangxx -c -### -nobuiltininc %s 2>&1 \ 72*d32fb5e5SSean Perry // RUN: --target=s390x-ibm-zos \ 73*d32fb5e5SSean Perry // RUN: | FileCheck --check-prefixes=CHECK6 %s 74*d32fb5e5SSean Perry 75*d32fb5e5SSean Perry // CHECK6: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" 76*d32fb5e5SSean Perry // CHECK6-SAME: "-internal-isystem" "{{.*}}{{/|\\\\}}bin{{/|\\\\}}..{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1" 77*d32fb5e5SSean Perry // CHECK6-NOT: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include{{(/|\\\\)}}zos_wrappers" 78*d32fb5e5SSean Perry // CHECK6-NOT: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include" 79*d32fb5e5SSean Perry // CHECK6-SAME: "-internal-isystem" "/usr/include" 80*d32fb5e5SSean Perry // CHECK6-SAME: "-fshort-enums" 81*d32fb5e5SSean Perry // CHECK6-SAME: "-fno-signed-char" 82*d32fb5e5SSean Perry // CHECK6-SAME: "-fno-signed-wchar" 83*d32fb5e5SSean Perry 84*d32fb5e5SSean Perry // RUN: %clangxx -c -### -D_XOPEN_SOURCE=700 %s 2>&1 \ 85*d32fb5e5SSean Perry // RUN: --target=s390x-ibm-zos \ 86*d32fb5e5SSean Perry // RUN: | FileCheck --check-prefixes=CHECK7 %s 87*d32fb5e5SSean Perry 88*d32fb5e5SSean Perry // CHECK7: "-D_UNIX03_WITHDRAWN" 89*d32fb5e5SSean Perry // CHECK7-SAME: "-D_OPEN_DEFAULT" 90*d32fb5e5SSean Perry // CHECK7-NOT: "-D_XOPEN_SOURCE=600" 91*d32fb5e5SSean Perry // CHECK7-SAME: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" 92*d32fb5e5SSean Perry // CHECK7-SAME: "-D" "_XOPEN_SOURCE=700" 93*d32fb5e5SSean Perry // CHECK7-SAME: "-internal-isystem" "{{.*}}{{/|\\\\}}bin{{/|\\\\}}..{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1" 94*d32fb5e5SSean Perry // CHECK7-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include{{(/|\\\\)}}zos_wrappers" 95*d32fb5e5SSean Perry // CHECK7-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{(/|\\\\)}}include" 96*d32fb5e5SSean Perry // CHECK7-SAME: "-internal-isystem" "/usr/include" 97*d32fb5e5SSean Perry // CHECK7-SAME: "-fshort-enums" 98*d32fb5e5SSean Perry // CHECK7-SAME: "-fno-signed-char" 99*d32fb5e5SSean Perry // CHECK7-SAME: "-fno-signed-wchar" 100