From patchwork Tue Apr 2 23:58:39 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Burgess X-Patchwork-Id: 32129 Received: (qmail 81923 invoked by alias); 2 Apr 2019 23:58:59 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 81853 invoked by uid 89); 2 Apr 2019 23:58:59 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-25.6 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_PASS autolearn=ham version=3.3.1 spammy=supplies X-HELO: mail-wr1-f49.google.com Received: from mail-wr1-f49.google.com (HELO mail-wr1-f49.google.com) (209.85.221.49) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 02 Apr 2019 23:58:57 +0000 Received: by mail-wr1-f49.google.com with SMTP id w1so18865898wrp.2 for ; Tue, 02 Apr 2019 16:58:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :in-reply-to:references; bh=6iP4cpIO+xOvXe7fSD65d826sqZnFpAddcrLJG/E9tg=; b=DEf4T6Un7vTCsUs/ojmd9POanuodDrAXa54/CKpkE/0NHIsKeNA1/kckahn5JXztWK r94DU9MO2i1UcWmFLRLrIGjBWU/t/0J1mYYBC77P2pg199U9LxDjmAy/nNrYHD2eGV9f rSK4eRpqTx4cxrlRTs6ijWEZniO+makz2gX96SaQm2EFtR9sPJL2X9TXV36pX0Ix2Mmb fjJ/yNEZM8S75NhJT8VJPeUg6rhifPYNZOV3A9JtleCYpVuvHFARYGk6fzyEHXPiWkQt tye2b2OazG+xL1Yz/0Rvuyo1SdY8o/CdpTku9GoRsvIEDfEZ3r2Lxq5ZbGkeE5tHO/t4 BhLA== Return-Path: Received: from localhost (host81-151-161-58.range81-151.btcentralplus.com. [81.151.161.58]) by smtp.gmail.com with ESMTPSA id o4sm30391386wmo.20.2019.04.02.16.58.54 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 02 Apr 2019 16:58:54 -0700 (PDT) From: Andrew Burgess To: gdb-patches@sourceware.org Cc: Richard Bunt , Andrew Burgess Subject: [PATCHv2 5/8] gdb/fortran: Print 'void' type in lower case Date: Wed, 3 Apr 2019 00:58:39 +0100 Message-Id: <03bb7f9b53ea52a727245933f4d4914fa0c78169.1554249182.git.andrew.burgess@embecosm.com> In-Reply-To: References: In-Reply-To: References: X-IsSubscribed: yes For a program compiled with gfortran the base type names are written as lower cases in the DWARF, and so GDB will display them as lower case. Additionally, in most places where GDB supplies its own type names (for example all of the types defined in f-lang.c in `build_fortran_types`), the type names are all lower case. An exception to this is where GDB prints the void type for Fortran. In this case GDB uses upper case. I'm not aware of any reason why this type should merit special attention, and it looks our of place when printing types, so this commit changes from 'VOID' to 'void' to match all the other types. gdb/ChangeLog: * f-lang.c (build_fortran_types): Change name of void type to lower case. * f-typeprint.c (f_type_print_base): Print the name of the void type, rather than a fixed string. * f-valprint.c (f_decorations): Use lower case void string. gdb/testsuite/ChangeLog: * gdb.fortran/exprs.exp (test_convenience_variables): Expect lower case void string. --- gdb/ChangeLog | 8 ++++++++ gdb/f-lang.c | 2 +- gdb/f-typeprint.c | 6 +++++- gdb/f-valprint.c | 2 +- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.fortran/exprs.exp | 2 +- 6 files changed, 21 insertions(+), 4 deletions(-) diff --git a/gdb/f-lang.c b/gdb/f-lang.c index 5eeb7dba6e5..abad2a0a2eb 100644 --- a/gdb/f-lang.c +++ b/gdb/f-lang.c @@ -670,7 +670,7 @@ build_fortran_types (struct gdbarch *gdbarch) = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct builtin_f_type); builtin_f_type->builtin_void - = arch_type (gdbarch, TYPE_CODE_VOID, TARGET_CHAR_BIT, "VOID"); + = arch_type (gdbarch, TYPE_CODE_VOID, TARGET_CHAR_BIT, "void"); builtin_f_type->builtin_character = arch_type (gdbarch, TYPE_CODE_CHAR, TARGET_CHAR_BIT, "character"); diff --git a/gdb/f-typeprint.c b/gdb/f-typeprint.c index a0e34b3058d..26ea9014135 100644 --- a/gdb/f-typeprint.c +++ b/gdb/f-typeprint.c @@ -328,7 +328,11 @@ f_type_print_base (struct type *type, struct ui_file *stream, int show, break; case TYPE_CODE_VOID: - fprintfi_filtered (level, stream, "VOID"); + { + gdbarch *gdbarch = get_type_arch (type); + struct type *void_type = builtin_f_type (gdbarch)->builtin_void; + fprintfi_filtered (level, stream, "%s", TYPE_NAME (void_type)); + } break; case TYPE_CODE_UNDEF: diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c index 5f9dd4dedb8..e216db6b63c 100644 --- a/gdb/f-valprint.c +++ b/gdb/f-valprint.c @@ -199,7 +199,7 @@ static const struct generic_val_print_decorations f_decorations = ")", ".TRUE.", ".FALSE.", - "VOID", + "void", "{", "}" }; diff --git a/gdb/testsuite/gdb.fortran/exprs.exp b/gdb/testsuite/gdb.fortran/exprs.exp index 3b24f7c135f..8649d0b246d 100644 --- a/gdb/testsuite/gdb.fortran/exprs.exp +++ b/gdb/testsuite/gdb.fortran/exprs.exp @@ -141,7 +141,7 @@ proc test_convenience_variables {} { gdb_test "print (\$foo = 32) + 4" " = 36" \ "Use convenience variable assignment in arithmetic expression" - gdb_test "print \$bar" " = VOID" \ + gdb_test "print \$bar" " = void" \ "Print contents of uninitialized convenience variable" }