forked from OSchip/llvm-project
26 lines
617 B
Plaintext
26 lines
617 B
Plaintext
//RUN: %clang_cc1 %s -triple spir -verify -fsyntax-only
|
|
//RUN: %clang_cc1 %s -triple spir -verify -fsyntax-only -DFUNCPTREXT
|
|
|
|
#ifdef FUNCPTREXT
|
|
#pragma OPENCL EXTENSION __cl_clang_function_pointers : enable
|
|
//expected-no-diagnostics
|
|
#endif
|
|
|
|
// Check that pointer to member functions are diagnosed
|
|
// unless specific clang extension is enabled.
|
|
struct C {
|
|
void f(int n);
|
|
};
|
|
|
|
typedef void (C::*p_t)(int);
|
|
#ifndef FUNCPTREXT
|
|
//expected-error@-2{{pointers to functions are not allowed}}
|
|
#endif
|
|
|
|
void test() {
|
|
void (C::*p)(int);
|
|
#ifndef FUNCPTREXT
|
|
//expected-error@-2{{pointers to functions are not allowed}}
|
|
#endif
|
|
}
|