explicit74.C: New test.

* g++.old-deja/g++.pt/explicit74.C: New test.  Explicit
 	instantiation of template produces incorrect code for delete
 	expression.

From-SVN: r23006
This commit is contained in:
Alexandre Oliva 1998-10-12 05:12:44 +00:00 committed by Alexandre Oliva
parent 9eb3f9c994
commit ba5494e3bc
2 changed files with 21 additions and 0 deletions

View File

@ -1,5 +1,14 @@
1998-10-12 Alexandre Oliva <oliva@dcc.unicamp.br>
* g++.old-deja/g++.pt/explicit74.C: New test. Explicit
instantiation of template produces incorrect code for delete
expression.
* g++.old-deja/g++.pt/instantiate5.C: New test. `global
constructors' name is not unique
* g++.old-deja/g++.pt/instantiate5.cc: ditto
* g++.old-deja/g++.pt/instantiate5-main.cc: ditto
* g++.old-deja/g++.other/init8.C: New test. uninitialized
automatic array of const is ill-formed

View File

@ -0,0 +1,12 @@
// execution test - XFAIL *-*-*
// Reduced from a testcase by Yotam Medini <yotam@avanticorp.com>
// egcs 1.1 seems to generate code that deletes a NULL pointer.
template <class bar> struct foo { void fuz(); ~foo(); };
struct baz { int i; foo<baz> j; } *p = 0;
template <class bar> void foo<bar>::fuz() { delete p; }
template <class bar> foo<bar>::~foo() { delete p; }
template class foo<baz>;
int main() { foo<baz>(); }