From 0aec8ece5248adb718bd7ac800c314a390383eca Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Sat, 14 Apr 2012 15:21:19 +0000 Subject: Consider visibility attributes last, so that they take precedence. I am working on a cleaner fix, but this gets the case in PR12552 passing. llvm-svn: 154749 --- clang/test/CodeGenCXX/visibility.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'clang/test/CodeGenCXX/visibility.cpp') diff --git a/clang/test/CodeGenCXX/visibility.cpp b/clang/test/CodeGenCXX/visibility.cpp index 59fd7c26f0d..88a456fe571 100644 --- a/clang/test/CodeGenCXX/visibility.cpp +++ b/clang/test/CodeGenCXX/visibility.cpp @@ -28,6 +28,18 @@ namespace test28 { // CHECK-HIDDEN: @_ZN6test285myvecE = hidden global } +namespace test29 { +#pragma GCC visibility push(hidden) + struct RECT { + int top; + }; + __attribute__ ((visibility ("default"))) extern RECT data_rect; + RECT data_rect = { -1}; +#pragma GCC visibility pop + // CHECK: @_ZN6test299data_rectE = global + // CHECK-HIDDEN: @_ZN6test299data_rectE = global +} + // CHECK: @_ZN5Test425VariableInHiddenNamespaceE = hidden global i32 10 // CHECK: @_ZN5Test71aE = hidden global // CHECK: @_ZN5Test71bE = global -- cgit v1.2.3