view gcc/testsuite/g++.dg/cpp1y/constexpr-89785-2.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
line wrap: on
line source

// PR c++/89785
// { dg-do compile { target c++14 } }

constexpr int
foo (int x)
{
  switch (x)
    {
    case 0:
      break;
    case 2:
      break;
    }
  throw 42;	// { dg-error "is not a constant expression" }
  return 0;
}

constexpr int
bar (int x)
{
  do
    {
      switch (x)
	{
	case 0:
	  throw 42;
	case 1:
	  for (int i = 0; i < 10; i++)
	    continue;
	  break;
	}
      throw -42;	// { dg-error "is not a constant expression" }
    }
  while (0);
  return x;
}