diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/parse/ambig2.C')
-rw-r--r-- | gcc/testsuite/g++.dg/parse/ambig2.C | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/parse/ambig2.C b/gcc/testsuite/g++.dg/parse/ambig2.C new file mode 100644 index 000000000..7b000c620 --- /dev/null +++ b/gcc/testsuite/g++.dg/parse/ambig2.C @@ -0,0 +1,27 @@ +// { dg-do compile } + +// Copyright (C) 2003 Free Software Foundation, Inc. +// Contributed by Nathan Sidwell 6 Jan 2003 <nathan@codesourcery.com> + +// PR 9212. We erroneously accepted an ill-formed +// function-declaration, rather than a variable initializer. + + +struct A +{ + enum E { e }; + A(E); +}; + +struct B +{ + enum F { f }; + B(F); +}; + +struct C +{ + C(A, B, A); +}; + +C c(A(A::e), B(B::f), A(A::e)); // This is not a function declaration |