diff options
author | John McCall <rjmccall@apple.com> | 2013-02-19 01:57:35 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2013-02-19 01:57:35 +0000 |
commit | b4a99d3194982a8f6117b241f92090a24eea9388 (patch) | |
tree | b48dd9f966485329cf296b26957e82afe35060f6 /clang/test/Driver/visibility.cpp | |
parent | a496098bb8bdbd9889e23bf1363ca28376ed7113 (diff) | |
download | bcm5719-llvm-b4a99d3194982a8f6117b241f92090a24eea9388.tar.gz bcm5719-llvm-b4a99d3194982a8f6117b241f92090a24eea9388.zip |
Add support for -fvisibility-ms-compat.
We treat this as an alternative to -fvisibility=<?>
which changes the default value visibility to "hidden"
and the default type visibility to "default".
Expose a -cc1 option for changing the default type
visibility, repurposing -fvisibility as the default
value visibility option (also setting type visibility
from it in the absence of a specific option).
rdar://13079314
llvm-svn: 175480
Diffstat (limited to 'clang/test/Driver/visibility.cpp')
-rw-r--r-- | clang/test/Driver/visibility.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/clang/test/Driver/visibility.cpp b/clang/test/Driver/visibility.cpp new file mode 100644 index 00000000000..cdbef97aadc --- /dev/null +++ b/clang/test/Driver/visibility.cpp @@ -0,0 +1,34 @@ +// RUN: %clang -### -S -fvisibility=hidden -fvisibility=default %s 2> %t.log +// RUN: FileCheck -check-prefix=CHECK-1 %s < %t.log +// CHECK-NOT: "-ftype-visibility" +// CHECK-1: "-fvisibility" "default" +// CHECK-NOT: "-ftype-visibility" + +// RUN: %clang -### -S -fvisibility=default -fvisibility=hidden %s 2> %t.log +// RUN: FileCheck -check-prefix=CHECK-2 %s < %t.log +// CHECK-NOT: "-ftype-visibility" +// CHECK-2: "-fvisibility" "hidden" +// CHECK-NOT: "-ftype-visibility" + +// RUN: %clang -### -S -fvisibility-ms-compat -fvisibility=hidden %s 2> %t.log +// RUN: FileCheck -check-prefix=CHECK-3 %s < %t.log +// CHECK-NOT: "-ftype-visibility" +// CHECK-3: "-fvisibility" "hidden" +// CHECK-NOT: "-ftype-visibility" + +// RUN: %clang -### -S -fvisibility-ms-compat -fvisibility=default %s 2> %t.log +// RUN: FileCheck -check-prefix=CHECK-4 %s < %t.log +// CHECK-NOT: "-ftype-visibility" +// CHECK-4: "-fvisibility" "default" +// CHECK-NOT: "-ftype-visibility" + +// RUN: %clang -### -S -fvisibility=hidden -fvisibility-ms-compat %s 2> %t.log +// RUN: FileCheck -check-prefix=CHECK-5 %s < %t.log +// CHECK-5: "-fvisibility" "hidden" +// CHECK-5: "-ftype-visibility" "default" + +// RUN: %clang -### -S -fvisibility=default -fvisibility-ms-compat %s 2> %t.log +// RUN: FileCheck -check-prefix=CHECK-6 %s < %t.log +// CHECK-6: "-fvisibility" "hidden" +// CHECK-6: "-ftype-visibility" "default" + |