blob: ccdb89f4069ded80ba2ef5bb48a5eda9722b1110 [file] [log] [blame] [edit]
// RUN: %clang_cc1 -verify -std=c23 -Wall -pedantic %s
// RUN: %clang_cc1 -verify -std=c2y -Wall -pedantic %s
/* WG14 N3274: Yes
* Remove imaginary types
*/
// Clang has never supported _Imaginary.
#ifdef __STDC_IEC_559_COMPLEX__
#error "When did this happen?"
#endif
_Imaginary float i; // expected-error {{imaginary types are not supported}}
// _Imaginary is a keyword in older language modes, but doesn't need to be one
// in C2y or later. However, to improve diagnostic behavior, we retain it as a
// keyword in all language modes -- it is not available as an identifier.
static_assert(!__is_identifier(_Imaginary));