From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9730 invoked by alias); 3 Dec 2001 02:49:58 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 9701 invoked from network); 3 Dec 2001 02:49:54 -0000 Received: from unknown (HELO cygnus.com) (205.180.230.5) by sources.redhat.com with SMTP; 3 Dec 2001 02:49:54 -0000 Received: from rtl.cygnus.com (cse.cygnus.com [205.180.230.236]) by runyon.cygnus.com (8.8.7-cygnus/8.8.7) with ESMTP id SAA10715; Sun, 2 Dec 2001 18:49:52 -0800 (PST) Received: (from ezannoni@localhost) by rtl.cygnus.com (8.11.2/8.11.0) id fB32u6j01634; Sun, 2 Dec 2001 21:56:06 -0500 X-Authentication-Warning: krustylu.cygnus.com: ezannoni set sender to ezannoni@cygnus.com using -f From: Elena Zannoni MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15370.59846.328509.459084@krustylu.cygnus.com> Date: Sun, 02 Dec 2001 18:49:00 -0000 To: petrs@caldera.com Cc: gdb-patches@sources.redhat.com Subject: Re: Patch for handling of DW_AT_byte_size in DW_TAG_string_type and a some FORTRAN support In-Reply-To: <3BE98B49.7EF731FA@caldera.com> References: <3BE98B49.7EF731FA@caldera.com> X-Mailer: VM 6.97 under Emacs 20.7.1 X-SW-Source: 2001-12/txt/msg00024.txt.bz2 Petr, sorry for the delay. Your patch is approved. Did you add yourself to the MAINTAINERS file in the write after approval section? (I think that's the correct section) If not, could you please do that? Do you have cvs write access? Thanks Elena Petr Sorfa writes: > Hi All, > > This patch contains: > > 1) Handling of the DW_AT_byte_size attribute when processing a > DW_TAG_string_type (this is acceptable under the current DWARF 2.1/3.0 > standard.) > 2) In read_tag_string_type(), a fix for FORTRAN that propagates the > first string length to all string types. This is important as FORTRAN > strings are not delimited as in C/C++. > 3) Handling of the DW_LANG_Fortran95. > > 2001-11-07 Petr Sorfa > > * dwarf2read.c (read_tag_string_type): Handling of > DW_AT_byte_size. > (read_tag_string_type): FORTRAN fix to prevent propagation of > first string size. > (set_cu_language): Handling of DW_LANG_Fortran95 > > Comments? > > Petr > -- > -------------------------------------------------------- > Petr Sorfa Senior Software Engineer > Caldera > 430 Mountain Ave. http://www.caldera.com > Murray Hill 07974 > NJ, USA > -------------------------------------------------------- > Disclaimer: All my comments are my own and nobody else's > ----------------------------------------------------------*** dwarf2read.c Wed Nov 7 09:18:31 2001 > --- dwarf2read.c.ps Wed Nov 7 09:22:41 2001 > *************** read_tag_string_type (struct die_info *d > *** 2743,2754 **** > } > else > { > ! length = 1; > } > index_type = dwarf2_fundamental_type (objfile, FT_INTEGER); > range_type = create_range_type (NULL, index_type, 1, length); > ! char_type = dwarf2_fundamental_type (objfile, FT_CHAR); > ! type = create_string_type (char_type, range_type); > die->type = type; > } > > --- 2743,2772 ---- > } > else > { > ! /* check for the DW_AT_byte_size attribute */ > ! attr = dwarf_attr (die, DW_AT_byte_size); > ! if (attr) > ! { > ! length = DW_UNSND (attr); > ! } > ! else > ! { > ! length = 1; > ! } > } > index_type = dwarf2_fundamental_type (objfile, FT_INTEGER); > range_type = create_range_type (NULL, index_type, 1, length); > ! if (cu_language == language_fortran) > ! { > ! /* Need to create a unique string type for bounds > ! information */ > ! type = create_string_type (0, range_type); > ! } > ! else > ! { > ! char_type = dwarf2_fundamental_type (objfile, FT_CHAR); > ! type = create_string_type (char_type, range_type); > ! } > die->type = type; > } > > *************** set_cu_language (unsigned int lang) > *** 3751,3756 **** > --- 3769,3775 ---- > break; > case DW_LANG_Fortran77: > case DW_LANG_Fortran90: > + case DW_LANG_Fortran95: > cu_language = language_fortran; > break; > case DW_LANG_Mips_Assembler: