blob: deaf62775336f4e42550ff166f41d8f3331a7d10 [file] [log] [blame]
Richard Smithdfb80de2012-02-18 20:53:32 +00001// RUN: %clang_cc1 -verify %s
2
3void f1() {
4 int a = 1;
5 int b = __imag a;
6 int *c = &__real a;
Richard Smith3fa3fea2013-02-02 02:14:45 +00007 int *d = &__imag a; // expected-error {{cannot take the address of an rvalue of type 'int'}}
Richard Smithdfb80de2012-02-18 20:53:32 +00008}
9
10void f2() {
11 _Complex int a = 1;
12 int b = __imag a;
13 int *c = &__real a;
14 int *d = &__imag a;
15}
16
17void f3() {
18 double a = 1;
19 double b = __imag a;
20 double *c = &__real a;
Richard Smith3fa3fea2013-02-02 02:14:45 +000021 double *d = &__imag a; // expected-error {{cannot take the address of an rvalue of type 'double'}}
Richard Smithdfb80de2012-02-18 20:53:32 +000022}
23
24void f4() {
25 _Complex double a = 1;
26 double b = __imag a;
27 double *c = &__real a;
28 double *d = &__imag a;
29}