aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.dg/ext/attrib41.C
blob: 368554a1b1dd5f60e2f6e793ea54034fd2d39ac3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// PR c++/45267
// { dg-options "-O" }

template<typename T> struct Vector {
  Vector(long long x);
  inline Vector<T> operator<<(int x) const __attribute__((always_inline));
};
long long bar (long long);
template<> inline Vector<int> Vector<int>::operator<<(int x) const {
  return bar(x);
}
bool b;
int main() {
  Vector<int> a(1);
  if ((a << 2), b) {
    a << 2;
    throw 1;
  }
}