diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.robertl/eb71.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.robertl/eb71.C | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb71.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb71.C new file mode 100644 index 000000000..b1288e238 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb71.C @@ -0,0 +1,37 @@ +// { dg-do assemble } +typedef __SIZE_TYPE__ size_t; + +class A { + +public: + void operator delete(void*, size_t); + void* operator new(size_t); +}; + +class B : public A { +friend class D; + + B(); + unsigned counter; +}; + +class D { + + int ins( B*&); +}; + +int +D::ins( B*& tempN) +{ + unsigned i; + + if (i == 10) { + } + else { + } + + tempN = new B(); + tempN->counter = 20; + + return 0; +} |