view gcc/testsuite/g++.dg/cpp0x/range-for36.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
line wrap: on
line source

// PR c++/85515
// { dg-do compile { target c++11 } }

int a[10];

void
foo ()
{
  for (auto &i : a)
    if (i != *__for_begin		// { dg-error "was not declared in this scope" }
	|| &i == __for_end		// { dg-error "was not declared in this scope" }
	|| &__for_range[0] != &a[0])	// { dg-error "was not declared in this scope" }
      __builtin_abort ();
}

template <int N>
void
bar ()
{
  for (auto &i : a)
    if (i != *__for_begin		// { dg-error "was not declared in this scope" }
	|| &i == __for_end		// { dg-error "was not declared in this scope" }
	|| &__for_range[0] != &a[0])	// { dg-error "was not declared in this scope" }
      __builtin_abort ();
}

void
baz ()
{
  foo ();
  bar <0> ();
}