diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.jason/default2.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.jason/default2.C | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/default2.C b/gcc/testsuite/g++.old-deja/g++.jason/default2.C new file mode 100644 index 000000000..167ac635d --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.jason/default2.C @@ -0,0 +1,31 @@ +// { dg-do assemble } +// PRMS Id: 5921 +// Bug: default arguments containing constructor calls persist incorrectly. + +class foo +{ + public: + foo(); + foo(int x); + public: + int iamamember; +}; + +class bar +{ + public: + bar(); + int memberfunction(int i, const char *j, double k, foo foo1 = foo(0)); +}; + +int +pain(bar *bar1) +{ + return bar1->memberfunction(1, "x", 0.0); +} + +int +pain2(bar *bar1) +{ + return bar1->memberfunction(1, "x", 0.0); +} |