forked from OSchip/llvm-project
88 lines
4.5 KiB
C
88 lines
4.5 KiB
C
// Check behaviour of -fvisibility-from-dllstorageclass options
|
|
|
|
// RUN: %clang -target x86_64-unknown-windows-itanium -fdeclspec \
|
|
// RUN: -Werror -S -### %s 2>&1 | \
|
|
// RUN: FileCheck %s \
|
|
// RUN: --implicit-check-not=-fvisibility-from-dllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-dllexport \
|
|
// RUN: --implicit-check-not=-fvisibility-nodllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-dllimport \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-nodllstorageclass
|
|
|
|
// RUN: %clang -target x86_64-unknown-windows-itanium -fdeclspec \
|
|
// RUN: -fvisibility-from-dllstorageclass \
|
|
// RUN: -fno-visibility-from-dllstorageclass \
|
|
// RUN: -Werror -S -### %s 2>&1 | \
|
|
// RUN: FileCheck %s \
|
|
// RUN: --implicit-check-not=-fvisibility-from-dllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-dllexport \
|
|
// RUN: --implicit-check-not=-fvisibility-nodllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-dllimport \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-nodllstorageclass
|
|
|
|
// RUN: %clang -target x86_64-unknown-windows-itanium -fdeclspec \
|
|
// RUN: -fno-visibility-from-dllstorageclass \
|
|
// RUN: -fvisibility-from-dllstorageclass \
|
|
// RUN: -Werror -S -### %s 2>&1 | \
|
|
// RUN: FileCheck %s --check-prefix=SET \
|
|
// RUN: --implicit-check-not=-fvisibility-from-dllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-dllexport \
|
|
// RUN: --implicit-check-not=-fvisibility-nodllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-dllimport \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-nodllstorageclass
|
|
|
|
// RUN: %clang -target x86_64-unknown-windows-itanium -fdeclspec \
|
|
// RUN: -fvisibility-dllexport=hidden \
|
|
// RUN: -fvisibility-nodllstorageclass=protected \
|
|
// RUN: -fvisibility-externs-dllimport=hidden \
|
|
// RUN: -fvisibility-externs-nodllstorageclass=protected \
|
|
// RUN: -S -### %s 2>&1 | \
|
|
// RUN: FileCheck %s --check-prefixes=UNUSED \
|
|
// RUN: --implicit-check-not=-fvisibility-from-dllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-dllexport \
|
|
// RUN: --implicit-check-not=-fvisibility-nodllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-dllimport \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-nodllstorageclass \
|
|
// RUN: --implicit-check-not=error: \
|
|
// RUN: --implicit-check-not=warning:
|
|
|
|
// RUN: %clang -target x86_64-unknown-windows-itanium -fdeclspec \
|
|
// RUN: -fno-visibility-from-dllstorageclass \
|
|
// RUN: -fvisibility-dllexport=hidden \
|
|
// RUN: -fvisibility-nodllstorageclass=protected \
|
|
// RUN: -fvisibility-externs-dllimport=hidden \
|
|
// RUN: -fvisibility-externs-nodllstorageclass=protected \
|
|
// RUN: -S -### %s 2>&1 | \
|
|
// RUN: FileCheck %s --check-prefixes=UNUSED \
|
|
// RUN: --implicit-check-not=-fvisibility-from-dllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-dllexport \
|
|
// RUN: --implicit-check-not=-fvisibility-nodllstorageclass \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-dllimport \
|
|
// RUN: --implicit-check-not=-fvisibility-externs-nodllstorageclass \
|
|
// RUN: --implicit-check-not=error: \
|
|
// RUN: --implicit-check-not=warning:
|
|
|
|
// UNUSED: warning: argument unused during compilation: '-fvisibility-dllexport=hidden'
|
|
// UNUSED-NEXT: warning: argument unused during compilation: '-fvisibility-nodllstorageclass=protected'
|
|
// UNUSED-NEXT: warning: argument unused during compilation: '-fvisibility-externs-dllimport=hidden'
|
|
// UNUSED-NEXT: warning: argument unused during compilation: '-fvisibility-externs-nodllstorageclass=protected'
|
|
|
|
// RUN: %clang -target x86_64-unknown-windows-itanium -fdeclspec \
|
|
// RUN: -fvisibility-from-dllstorageclass \
|
|
// RUN: -fvisibility-dllexport=default \
|
|
// RUN: -fvisibility-dllexport=hidden \
|
|
// RUN: -fvisibility-nodllstorageclass=default \
|
|
// RUN: -fvisibility-nodllstorageclass=protected \
|
|
// RUN: -fvisibility-externs-dllimport=default \
|
|
// RUN: -fvisibility-externs-dllimport=hidden \
|
|
// RUN: -fvisibility-externs-nodllstorageclass=default \
|
|
// RUN: -fvisibility-externs-nodllstorageclass=protected \
|
|
// RUN: -Werror -S -### %s 2>&1 | \
|
|
// RUN: FileCheck %s --check-prefixes=SET,ALL
|
|
|
|
// SET: "-fvisibility-from-dllstorageclass"
|
|
// ALL-SAME: "-fvisibility-dllexport=hidden"
|
|
// ALL-SAME: "-fvisibility-nodllstorageclass=protected"
|
|
// ALL-SAME: "-fvisibility-externs-dllimport=hidden"
|
|
// ALL-SAME: "-fvisibility-externs-nodllstorageclass=protected"
|