Mercurial > hg > CbC > CbC_llvm
diff clang/test/Driver/visibility-dllstorageclass.c @ 221:79ff65ed7e25
LLVM12 Original
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 15 Jun 2021 19:15:29 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/clang/test/Driver/visibility-dllstorageclass.c Tue Jun 15 19:15:29 2021 +0900 @@ -0,0 +1,87 @@ +// 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"