summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp0x/constexpr-volatile2.C
blob: 0def8d737314f933b02f8a25f54ef168b7234e2e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
// PR c++/86608
// { dg-do compile { target c++11 } }

template<typename T, T v> struct X {};

int
main ()
{
  static constexpr volatile int a = 3;
  constexpr volatile int b = 2;
  return (sizeof(X<decltype(a), a>) // { dg-error "lvalue-to-rvalue conversion of a volatile lvalue" }
	  + sizeof(X<decltype(b), b>)); // { dg-error "lvalue-to-rvalue conversion of a volatile lvalue" }
}