c++/5453: Compiled program crash - inheritance/template/friend class problem

Karel Gardas kgardas@iol.cz
Tue Jan 22 22:56:00 GMT 2002


The following reply was made to PR c++/5453; it has been noted by GNATS.

From: Karel Gardas <kgardas@iol.cz>
To: jason@gcc.gnu.org,  <gcc-bugs@gcc.gnu.org>,  <gcc-prs@gcc.gnu.org>, 
     <jason@gcc.gnu.org>,  <nobody@gcc.gnu.org>,  <gcc-gnats@gcc.gnu.org>
Cc:  
Subject: Re: c++/5453: Compiled program crash - inheritance/template/friend
 class problem
Date: Wed, 23 Jan 2002 07:41:50 +0100 (CET)

 On 22 Jan 2002 jason@gcc.gnu.org wrote:
 
 > Synopsis: Compiled program crash - inheritance/template/friend class problem
 >
 > Responsible-Changed-From-To: unassigned->jason
 > Responsible-Changed-By: jason
 > Responsible-Changed-When: Tue Jan 22 09:28:08 2002
 > Responsible-Changed-Why:
 >     mine
 >
 > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=5453
 >
 
 I would like to update this bug report.
 
 I heard that some gcc3.1 in the past doesn't have this bug and so I've
 tried to find the first version in which it appeared.
 
 The result is that version gcc version 3.1 20011212 (experimental) is
 correct ie without this bug and next version gcc version 3.1 20011213
 (experimental) has this bug.
 
 Diff between changelogs in gcc/cp/ looks:
 
 thinkpad:~/cvs/gcc$ diff -c gcc3.1-2001-12-12/gcc/cp/ChangeLog gcc3.1-2001-12-13/gcc/cp/ChangeLog
 *** gcc3.1-2001-12-12/gcc/cp/ChangeLog  Tue Jan 22 23:20:55 2002
 --- gcc3.1-2001-12-13/gcc/cp/ChangeLog  Tue Jan 22 21:39:33 2002
 ***************
 *** 1,3 ****
 --- 1,33 ----
 + 2001-12-13  Jason Merrill  <jason@redhat.com>
 +
 +       * optimize.c (maybe_clone_body): Fix parameter updating.
 +
 + 2001-12-12  Jason Merrill  <jason@redhat.com>
 +
 +       * decl.c (store_parm_decls): Remove parms_have_cleanups cruft.
 +       * semantics.c (genrtl_start_function): Don't pass
 +       parms_have_cleanups or push an extra binding level.
 +       (genrtl_finish_function): Lose cleanup_label cruft.
 +
 +       * cp-tree.h (struct cp_language_function): Remove x_ctor_label.
 +       (ctor_label): Remove.
 +       * semantics.c (finish_return_stmt): Lose ctor_label support.
 +       * decl.c (finish_constructor_body, mark_lang_function): Likewise.
 +       * typeck.c (check_return_expr): Check DECL_DESTRUCTOR_P, not
 +       dtor_label.
 +
 +       * call.c (build_new_method_call): Let resolves_to_fixed_type_p
 +       check for [cd]tors.
 +       * class.c (fixed_type_or_null, case INDIRECT_REF): Fix.
 +
 +       * decl.c (finish_function): Check VMS_TARGET, not VMS.
 +
 +       * decl.c (start_cleanup_fn): Remove redundant pushlevel.
 +       (end_cleanup_fn): And poplevel.
 +
 +       * semantics.c (setup_vtbl_ptr): Always build a CTOR_INITIALIZER
 +       if we're in a template.
 +
   2001-12-12  Jakub Jelinek  <jakub@redhat.com>
 
         * cp-tree.h (DESTRUCTOR_DECL_PREFIX, DESTRUCTOR_NAME_P,
 thinkpad:~/cvs/gcc$
 
 
 
 
 Cheers,
 
 Karel
 --
  Karel Gardas                           e-mail: kgardas@iol.cz
 
 



More information about the Gcc-prs mailing list