URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.other/] [defarg7.C] - Rev 414
Go to most recent revision | Compare with Previous | Blame | View Log
// { dg-do assemble }
// Copyright (C) 2000, 2002 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 7 Jan 2001 <nathan@codesourcery.com>
// As of G++ 3.4, we no longer attempt to detect dependencies; the
// standard does not require that we do.
// Bug 1038. Default args on class members can produce circular dependencies.
// Make sure we spot them, and don't depend on a particular ordering.
struct A
{
static int Foo (int = Baz ()); // { dg-error "" }
static int Baz (int = Foo ());
};
struct Test
{
Test (void * = 0);
void set (const Test &arg = Test ());
};
struct B
{
static int Bar (int = Foo (1));
static int Foo (int = Baz ()); // { dg-error "" }
static int Baz (int = Foo (1));
};
int main ()
{
Test t;
t.set ();
t.set (t);
B::Bar ();
B::Bar (1);
B::Baz ();
B::Baz (1);
B::Foo ();
B::Foo (1);
return 0;
}
Go to most recent revision | Compare with Previous | Blame | View Log