1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
// RUN: %clang_cc1 -Wall -Wno-unused -Wno-uninitialized -verify -std=c17 %s
// RUN: %clang_cc1 -Wall -Wno-unused -Wno-uninitialized -verify -std=c23 %s
#define CFI_UNCHECKED_CALLEE __attribute__((cfi_unchecked_callee))
#if __STDC_VERSION__ >= 202311L
// expected-no-diagnostics
#endif
#if __STDC_VERSION__ < 202311L
// expected-note@+2 2 {{previous definition is here}}
#endif
struct field_attr_test {
void (CFI_UNCHECKED_CALLEE *func)(void);
};
#if __STDC_VERSION__ < 202311L
// expected-error@+2{{redefinition of 'field_attr_test'}}
#endif
struct field_attr_test {
void (CFI_UNCHECKED_CALLEE *func)(void);
};
typedef void (CFI_UNCHECKED_CALLEE func_t)(void);
#if __STDC_VERSION__ < 202311L
// expected-error@+2{{redefinition of 'field_attr_test'}}
#endif
struct field_attr_test {
func_t *func;
};
|