From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18675 invoked by alias); 6 Apr 2005 21:11:35 -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 18659 invoked from network); 6 Apr 2005 21:11:31 -0000 Received: from unknown (HELO e33.co.us.ibm.com) (32.97.110.131) by sourceware.org with SMTP; 6 Apr 2005 21:11:31 -0000 Received: from d03relay05.boulder.ibm.com (d03relay05.boulder.ibm.com [9.17.195.107]) by e33.co.us.ibm.com (8.12.10/8.12.9) with ESMTP id j36LBU4I633838 for ; Wed, 6 Apr 2005 17:11:30 -0400 Received: from d03av01.boulder.ibm.com (d03av01.boulder.ibm.com [9.17.195.167]) by d03relay05.boulder.ibm.com (8.12.10/NCO/VER6.6) with ESMTP id j36LBTcC196676 for ; Wed, 6 Apr 2005 15:11:29 -0600 Received: from d03av01.boulder.ibm.com (loopback [127.0.0.1]) by d03av01.boulder.ibm.com (8.12.11/8.12.11) with ESMTP id j36LBTfN015510 for ; Wed, 6 Apr 2005 15:11:29 -0600 Received: from dyn9047022123-009047022128.beaverton.ibm.com (dyn9047022123-009047022128.beaverton.ibm.com [9.47.22.128]) by d03av01.boulder.ibm.com (8.12.11/8.12.11) with ESMTP id j36LBT0M015501 for ; Wed, 6 Apr 2005 15:11:29 -0600 From: Paul Gilliam Reply-To: pgilliam@us.ibm.com To: gdb-patches@sources.redhat.com Subject: [patch] In testsuite, make 'test_compiler_info' work like 'istarget' Date: Wed, 06 Apr 2005 21:11:00 -0000 User-Agent: KMail/1.6.2 MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <200504061408.50092.pgilliam@us.ibm.com> X-SW-Source: 2005-04/txt/msg00058.txt.bz2 The dejagnu procedure 'test_compiler_info' works in much the same way as the dejagnu procedure ''istarget': it takes a pattern as argument and tests that pattern against a magic string. Unlike 'istarget', 'test_compiler_info' does not return the magic string if the argument is null. This patch fixes that. With this patch, you can do this: switch -glob [test_compiler_info] { "gcc-1-*" { set gcc_compiled 1 } "gcc-2-*" { set gcc_compiled 2 } "gcc-3-*" { set gcc_compiled 3 } "gcc-4-*" { set gcc_compiled 4 } "gcc-5-*" { set gcc_compiled 5 } "hpcc-*" { set hp_cc_compiler 1 } "hpacc-*" { set hp_aCC_compiler 1 } default { warning "unknown compiler" } } instead of this: if {[test_compiler_info "gcc-1-*"]} then { set gcc_compiled 1 } elseif {[test_compiler_info "gcc-2-*"]} then { set gcc_compiled 2 } elseif {[test_compiler_info "gcc-3-*"]} then { set gcc_compiled 3 } elseif {[test_compiler_info "gcc-4-*"]} then { set gcc_compiled 4 } elseif {[test_compiler_info "gcc-5-*" ]} then { set gcc_compiled 5 } elseif {[test_compiler_info "hpcc-*" ]} then { set hp_cc_compiler 1 } elseif {[test_compiler_info "hpacc-*"]} then { set hp_aCC_compiler 1 } else { warning "unknown compiler" } Of course you could do the following, but that would be cheating, right? global compiler_info switch -glob $compiler_info { "gcc-1-*" { set gcc_compiled 1 } "gcc-2-*" { set gcc_compiled 2 } "gcc-3-*" { set gcc_compiled 3 } "gcc-4-*" { set gcc_compiled 4 } "gcc-5-*" { set gcc_compiled 5 } "hpcc-*" { set hp_cc_compiler 1 } "hpacc-*" { set hp_aCC_compiler 1 } default { warning "unknown compiler" } } OK to commit? -=# Paul #=- -- 2005-04-06 Paul Gilliam * testsuite/lib/gdb.exp: Make 'test_compiler_info' work like 'istarget' - return compiler_info if null argument. Index: lib/gdb.exp =================================================================== RCS file: /cvs/src/src/gdb/testsuite/lib/gdb.exp,v retrieving revision 1.58 diff -c -3 -p -r1.58 gdb.exp *** lib/gdb.exp 10 Sep 2004 01:04:59 -0000 1.58 --- lib/gdb.exp 6 Apr 2005 20:38:35 -0000 *************** proc get_compiler_info {binfile args} { *** 1293,1298 **** --- 1293,1309 ---- proc test_compiler_info { compiler } { global compiler_info + + # if no arg, return the compiler_info string + + if [string match "" $compiler] { + if [info exists compiler_info] { + return $compiler_info + } else { + perror "No compiler info found." + } + } + return [string match $compiler $compiler_info] }