From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9669 invoked by alias); 25 Feb 2003 20:46:01 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 9649 invoked by uid 71); 25 Feb 2003 20:46:00 -0000 Date: Tue, 25 Feb 2003 20:46:00 -0000 Message-ID: <20030225204600.9639.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: Janis Johnson Subject: Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates) Reply-To: Janis Johnson X-SW-Source: 2003-02/txt/msg01335.txt.bz2 List-Id: The following reply was made to PR c++/9820; it has been noted by GNATS. From: Janis Johnson To: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org, gcc-prs@gcc.gnu.org, poschmid@lbl.gov Cc: Subject: Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates) Date: Tue, 25 Feb 2003 12:43:20 -0800 Between 2002-10-30 and 2002-12-24, the mainline and the 3.3 branch (after its creation) compiled the test case with no error message, and then the error message came back, along with the ICE. The patch that caused the test case to compile successfully: 2002-10-30 Kriang Lerdsuwanakij Core issue 287, PR c++/7639 * cp-tree.h (lang_type_class): Add decl_list field. (CLASSTYPE_DECL_LIST): New macro. (maybe_add_class_template_decl_list): Add declaration. * class.c (duplicate_tag_error): Initialize CLASSTYPE_DECL_LIST. (unreverse_member_declarations): Reverse CLASSTYPE_DECL_LIST. (maybe_add_class_template_decl_list): New function. (add_implicitly_declared_members): Use it. * decl.c (maybe_process_template_type_declaration): Likewise. (pushtag): Likewise. * friend.c (add_friend): Likewise. (make_friend_class): Likewise. * semantics.c (finish_member_declaration): Likewise. (begin_class_definition): Initialize CLASSTYPE_DECL_LIST. * pt.c (instantiate_class_template): Use CLASSTYPE_DECL_LIST to process members and friends in the order of declaration. The patch to mainline and 3.3-branch that brought back the error message, plus the ICE: 2002-12-24 Nathan Sidwell PR C++/7964 * cp-tree.h (resolve_scoped_fn_name): Prototype. * call.c (resolve_scoped_fn_name): New function. Deal with more template expansion. Broken out of ... * parse.y (parse_finish_call_expr): ... here. Call it. * decl2.c (build_expr_from_tree, CALL_EXPR): Use resolve_scoped_fn_name and build_call_from_tree. The regression hunt used the original test case, not the very short one that Wolfgang provided. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9820