forked from OSchip/llvm-project
18 lines
562 B
C++
18 lines
562 B
C++
|
// RUN: %clang_cc1 %s -triple=x86_64-linux-gnu -S -verify -o -
|
||
|
|
||
|
struct S {
|
||
|
__attribute__((always_inline, target("avx512f")))
|
||
|
void foo(){}
|
||
|
__attribute__((always_inline, target("avx512f")))
|
||
|
operator int(){ return 0; }
|
||
|
__attribute__((always_inline, target("avx512f")))
|
||
|
void operator()(){ }
|
||
|
|
||
|
};
|
||
|
|
||
|
void usage(S & s) {
|
||
|
s.foo(); // expected-error {{'foo' requires target feature 'avx512f'}}
|
||
|
(void)(int)s; // expected-error {{'operator int' requires target feature 'avx512f'}}
|
||
|
s(); // expected-error {{'operator()' requires target feature 'avx512f'}}
|
||
|
}
|