From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14392 invoked by alias); 17 Oct 2002 19:46:02 -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 14377 invoked by uid 71); 17 Oct 2002 19:46:02 -0000 Date: Thu, 17 Oct 2002 12:46:00 -0000 Message-ID: <20021017194602.14376.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: Jeff Sturm Subject: Re: java/8260: gcj -fprofile-arcs -ftest-coverage doesn't work Reply-To: Jeff Sturm X-SW-Source: 2002-10/txt/msg00689.txt.bz2 List-Id: The following reply was made to PR java/8260; it has been noted by GNATS. From: Jeff Sturm To: owen@schwartz-omalley.com Cc: gcc-gnats@gcc.gnu.org, , , Subject: Re: java/8260: gcj -fprofile-arcs -ftest-coverage doesn't work Date: Thu, 17 Oct 2002 15:42:02 -0400 (EDT) On 17 Oct 2002 owen@schwartz-omalley.com wrote: > gcj doesn't seem to support -fprofile-arcs: > > gcj -fprofile-arcs -ftest-coverage -g --main=test test.java > test.java: > Internal compiler error: Error reporting routines re-entered. > Please submit a full bug report, > with preprocessed source if appropriate. > See for instructions. -fprofile-arcs is broken because the gcj frontend doesn't initialize long_integer_type_node. I've been using the following workaround, but haven't submitted since I'm not sure it's the right thing to do. (I.e. is int_type_node or long_type_node the correct size for it? These are java types, not C types.) Index: decl.c =================================================================== RCS file: /cvs/gcc/gcc/gcc/java/decl.c,v retrieving revision 1.132 diff -u -r1.132 decl.c --- decl.c 21 Sep 2002 02:19:44 -0000 1.132 +++ decl.c 17 Oct 2002 19:36:43 -0000 @@ -426,7 +426,7 @@ pushdecl (build_decl (TYPE_DECL, get_identifier ("byte"), byte_type_node)); short_type_node = make_signed_type (16); pushdecl (build_decl (TYPE_DECL, get_identifier ("short"), short_type_node)); - int_type_node = make_signed_type (32); + long_integer_type_node = int_type_node = make_signed_type (32); pushdecl (build_decl (TYPE_DECL, get_identifier ("int"), int_type_node)); long_type_node = make_signed_type (64); pushdecl (build_decl (TYPE_DECL, get_identifier ("long"), long_type_node));