f4a2713ac8
Change-Id: Ia40e9ffdf29b5dab2f122f673ff6802a58bc690f
20 lines
518 B
C++
20 lines
518 B
C++
// RUN: %clang_cc1 -fsyntax-only -verify %s
|
|
|
|
template <class Element>
|
|
void foo() {
|
|
}
|
|
template <>
|
|
__attribute__((visibility("hidden"))) // expected-note {{previous attribute is here}}
|
|
void foo<int>();
|
|
|
|
template <>
|
|
void foo<int>();
|
|
|
|
template <>
|
|
__attribute__((visibility("default"))) // expected-error {{visibility does not match previous declaration}}
|
|
void foo<int>() {
|
|
}
|
|
|
|
struct x3 {
|
|
static int y;
|
|
} __attribute((visibility("default"))); // expected-warning {{attribute 'visibility' after definition is ignored}}
|