1 // Test that the C++11 variants of real/imag have an ABI tag
2 // { dg-do compile { target c++11 } }
3 // { dg-require-normal-namespace "" }
7 // { dg-final { scan-assembler "_ZNKSt7complexIfE4realB5cxx11Ev" } }
8 float (std::complex<float>::*p1
)() const = &std::complex<float>::real
;
9 // { dg-final { scan-assembler "_ZNKSt7complexIdE4realB5cxx11Ev" } }
10 double (std::complex<double>::*p2
)() const = &std::complex<double>::real
;
11 // { dg-final { scan-assembler "_ZNKSt7complexI\(e\|g\|u9__ieee128\)E4realB5cxx11Ev" } }
12 long double (std::complex<long double>::*p3
)() const
13 = &std::complex<long double>::real
;
14 // { dg-final { scan-assembler "_ZNKSt7complexIiE4realB5cxx11Ev" } }
15 int (std::complex<int>::*p4
)() const = &std::complex<int>::real
;
17 // { dg-final { scan-assembler "_ZNKSt7complexIfE4imagB5cxx11Ev" } }
18 float (std::complex<float>::*p5
)() const = &std::complex<float>::imag
;
19 // { dg-final { scan-assembler "_ZNKSt7complexIdE4imagB5cxx11Ev" } }
20 double (std::complex<double>::*p6
)() const = &std::complex<double>::imag
;
21 // { dg-final { scan-assembler "_ZNKSt7complexI\(e\|g\|u9__ieee128\)E4imagB5cxx11Ev" } }
22 long double (std::complex<long double>::*p7
)() const
23 = &std::complex<long double>::imag
;
24 // { dg-final { scan-assembler "_ZNKSt7complexIiE4imagB5cxx11Ev" } }
25 int (std::complex<int>::*p8
)() const = &std::complex<int>::imag
;