// PR c++/91476 | |
// Test that hidden and internal visibility propagates to reference temps. | |
// { dg-require-visibility "" } | |
#define HIDDEN __attribute((visibility("hidden"))) | |
// { dg-final { scan-hidden "_ZGRZ1fvE3foo_" } } | |
HIDDEN inline const int* f() { static const int &foo = 1; return &foo; } | |
// { dg-final { scan-assembler-not "(weak|globl)\[^\n\]*_ZGRN12_GLOBAL__N_13fooE_" } } | |
namespace { const int &foo = 1; } | |
const void *volatile p; | |
int main() | |
{ | |
p = f(); | |
p = &foo; | |
} |