|  | // RUN: %clang_cc1 -verify %s | 
|  |  | 
|  | void f1(void) { | 
|  | int a = 1; | 
|  | int b = __imag a; | 
|  | int *c = &__real a; | 
|  | int *d = &__imag a; // expected-error {{cannot take the address of an rvalue of type 'int'}} | 
|  | } | 
|  |  | 
|  | void f2(void) { | 
|  | _Complex int a = 1; | 
|  | int b = __imag a; | 
|  | int *c = &__real a; | 
|  | int *d = &__imag a; | 
|  | } | 
|  |  | 
|  | void f3(void) { | 
|  | double a = 1; | 
|  | double b = __imag a; | 
|  | double *c = &__real a; | 
|  | double *d = &__imag a; // expected-error {{cannot take the address of an rvalue of type 'double'}} | 
|  | } | 
|  |  | 
|  | void f4(void) { | 
|  | _Complex double a = 1; | 
|  | double b = __imag a; | 
|  | double *c = &__real a; | 
|  | double *d = &__imag a; | 
|  | } | 
|  |  | 
|  | // PR69218 | 
|  | int f5(void) { | 
|  | float _Complex a; | 
|  | return (0 < &__real__ a) && (0 < &__imag__ a); | 
|  | } |