blob: c11a1361a1a3253cc708d5e617fb0f848ddcff62 [file] [log] [blame]
// Check that we transparently fallback to llvm-gcc for i386 kexts, we don't
// support the ABI they use (yet).
// RUN: %clang -target i386-apple-darwin10 \
// RUN: -fapple-kext -### -fsyntax-only %s 2> %t
// RUN: FileCheck --check-prefix=CHECK < %t %s
// CHECK: cc1plus"
// CHECK: "-fapple-kext"
// RUN: %clang -target i386-apple-darwin10 \
// RUN: -mkernel -### -fsyntax-only %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-MKERNEL < %t %s
// CHECK-MKERNEL: cc1plus"
// CHECK-MKERNEL: "-mkernel"
// RUN: %clang -target i386-apple-darwin10 \
// RUN: -Wno-self-assign -Wc++11-extensions -Wno-microsoft -Wmicrosoft -Wvla \
// RUN: -faltivec -mthumb -mcpu=G4 -mlongcall -mno-longcall -msoft-float \
// RUN: -fapple-kext -### -fsyntax-only %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-UNSUPPORTED < %t %s
// CHECK-UNSUPPORTED: cc1plus"
// CHECK-UNSUPPORTED-NOT: "-Wno-self-assign"
// CHECK-UNSUPPORTED-NOT: "-Wc++11-extensions"
// CHECK-UNSUPPORTED-NOT: "-Wno-microsoft"
// CHECK-UNSUPPORTED-NOT: "-Wmicrosoft"
// CHECK-UNSUPPORTED-NOT: "-Wvla"
// CHECK-UNSUPPORTED-NOT: "-faltivec"
// CHECK-UNSUPPORTED-NOT: "-mthumb"
// CHECK-UNSUPPORTED-NOT: "-mlongcall"
// CHECK-UNSUPPORTED: "-mno-longcall"
// CHECK-UNSUPPORTED: "-msoft-float"
// RUN: %clang -target i386-apple-darwin10 \
// RUN: -Wconstant-logical-operand -save-temps \
// RUN: -fapple-kext -### -fsyntax-only %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-UNSUPPORTED2 < %t %s
// CHECK-UNSUPPORTED2: cc1plus"
// CHECK-UNSUPPORTED2-NOT: "-Wconstant-logical-operand"
// Check that --serialize-diagnostics does not cause an "argument unused" error.
// RUN: %clang -target i386-apple-darwin10 \
// RUN: -Wall -fapple-kext -### --serialize-diagnostics %t.dia -c %s 2>&1 | \
// RUN: FileCheck --check-prefix=CHECK-UNUSED %s
// CHECK-UNUSED-NOT: argument unused
// CHECK-UNUSED: cc1plus