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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
/* { dg-do compile } */
/* { dg-options "-std=gnu99" } */
/* C99 6.5.3 Unary ~. */
void test ()
{
short _Fract sf;
_Fract f;
long _Fract lf;
long long _Fract llf;
unsigned short _Fract usf;
unsigned _Fract uf;
unsigned long _Fract ulf;
unsigned long long _Fract ullf;
_Sat short _Fract Ssf;
_Sat _Fract Sf;
_Sat long _Fract Slf;
_Sat long long _Fract Sllf;
_Sat unsigned short _Fract Susf;
_Sat unsigned _Fract Suf;
_Sat unsigned long _Fract Sulf;
_Sat unsigned long long _Fract Sullf;
short _Accum sa;
_Accum a;
long _Accum la;
long long _Accum lla;
unsigned short _Accum usa;
unsigned _Accum ua;
unsigned long _Accum ula;
unsigned long long _Accum ulla;
_Sat short _Accum Ssa;
_Sat _Accum Sa;
_Sat long _Accum Sla;
_Sat long long _Accum Slla;
_Sat unsigned short _Accum Susa;
_Sat unsigned _Accum Sua;
_Sat unsigned long _Accum Sula;
_Sat unsigned long long _Accum Sulla;
/* C99 Section 6.5.3.3 ~ shall have integer types. */
~sf; /* { dg-error "wrong type argument to bit-complement" } */
~f; /* { dg-error "wrong type argument to bit-complement" } */
~lf; /* { dg-error "wrong type argument to bit-complement" } */
~llf; /* { dg-error "wrong type argument to bit-complement" } */
~usf; /* { dg-error "wrong type argument to bit-complement" } */
~uf; /* { dg-error "wrong type argument to bit-complement" } */
~ulf; /* { dg-error "wrong type argument to bit-complement" } */
~ullf; /* { dg-error "wrong type argument to bit-complement" } */
~Ssf; /* { dg-error "wrong type argument to bit-complement" } */
~Sf; /* { dg-error "wrong type argument to bit-complement" } */
~Slf; /* { dg-error "wrong type argument to bit-complement" } */
~Sllf; /* { dg-error "wrong type argument to bit-complement" } */
~Susf; /* { dg-error "wrong type argument to bit-complement" } */
~Suf; /* { dg-error "wrong type argument to bit-complement" } */
~Sulf; /* { dg-error "wrong type argument to bit-complement" } */
~Sullf; /* { dg-error "wrong type argument to bit-complement" } */
~sa; /* { dg-error "wrong type argument to bit-complement" } */
~a; /* { dg-error "wrong type argument to bit-complement" } */
~la; /* { dg-error "wrong type argument to bit-complement" } */
~lla; /* { dg-error "wrong type argument to bit-complement" } */
~usa; /* { dg-error "wrong type argument to bit-complement" } */
~ua; /* { dg-error "wrong type argument to bit-complement" } */
~ula; /* { dg-error "wrong type argument to bit-complement" } */
~ulla; /* { dg-error "wrong type argument to bit-complement" } */
~Ssa; /* { dg-error "wrong type argument to bit-complement" } */
~Sa; /* { dg-error "wrong type argument to bit-complement" } */
~Sla; /* { dg-error "wrong type argument to bit-complement" } */
~Slla; /* { dg-error "wrong type argument to bit-complement" } */
~Susa; /* { dg-error "wrong type argument to bit-complement" } */
~Sua; /* { dg-error "wrong type argument to bit-complement" } */
~Sula; /* { dg-error "wrong type argument to bit-complement" } */
~Sulla; /* { dg-error "wrong type argument to bit-complement" } */
}
|