aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/torture/pr85496.C
blob: 3f504a377914ea7ee0080ce82da91c01bd7c527e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// PR middle-end/85496
// Reported by Marek Polacek <mpolacek@gcc.gnu.org>

template <typename> class complex;
template <typename _Tp> complex<_Tp> operator*(complex<_Tp>, complex<_Tp>);
template <> struct complex<float> { _Complex float _M_value; };
class A {
  complex<float> _f0, _f1;

public:
  complex<float> &m_fn1() { return _f1; }
};
complex<float> a;
void cos() {
  A b;
  complex<float> c;
  b.m_fn1() = c * a;
}