From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7779 invoked by alias); 24 Apr 2004 18:20:20 -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 7770 invoked from network); 24 Apr 2004 18:20:19 -0000 Received: from unknown (HELO takamaka.act-europe.fr) (142.179.108.108) by sources.redhat.com with SMTP; 24 Apr 2004 18:20:19 -0000 Received: by takamaka.act-europe.fr (Postfix, from userid 507) id D9DAF47D63; Sat, 24 Apr 2004 11:20:18 -0700 (PDT) Date: Sat, 24 Apr 2004 18:20:00 -0000 From: Joel Brobecker To: Andrew Cagney Cc: gdb-patches@sources.redhat.com, Jerome Guitton Subject: Re: [patch] Test scalar call/return/finish test - call-sc Message-ID: <20040424182018.GN2811@gnat.com> References: <4089AD34.90607@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4089AD34.90607@gnu.org> User-Agent: Mutt/1.4i X-SW-Source: 2004-04/txt/msg00601.txt.bz2 > Joel, Jerome, AIX should have zero call-sc and structs failures (as > there is for PPC/elf). > > committed, > Andrew > 2004-04-23 Andrew Cagney > > * gdb.base/call-sc.exp: New test of scalar call/return values. > * gdb.base/call-sc.c: Ditto. I got a few failures... === gdb Summary === # of expected passes 141 # of unexpected failures 12 The following FAILs seem to be caused by a problem in the test itself rather than GDB. FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-tc cha FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-ts sho FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-ti i FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-tl lo FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-tll lo FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-tf float FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-td double FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-tld lo FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-te e Let's look at the first one, for instance: (gdb) ptype tc type = char (gdb) PASS: gdb.base/call-sc.exp: ptype; call-sc-tc (cha) ptype foo type = char (gdb) FAIL: gdb.base/call-sc.exp: ptype foo; call-sc-tc cha If I understand your call-sc.exp well, then the test gets the expected answer for the second test from the first one. But as you see from the PASS message, it only seems to have picked up the first 3 characters of the output from the first query. Looks like there is something weird going on... The following ones seem to be bona fide problems: FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tc FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-ts p/c L $3 = 90 'Z' (gdb) PASS: gdb.base/call-sc.exp: zed L for return; return call-sc-tc return foo Make fun return now? (y or n) y #0 main () at gdb.base/call-sc.c:78 78 L = fun (); (gdb) next 79 zed (); (gdb) PASS: gdb.base/call-sc.exp: return foo; return call-sc-tc p/c L $4 = 90 'Z' (gdb) FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tc I think we expected L to be set to '1'. And last but not least, this FAIL also seems to be a genuine problem: FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tf The log files contain the following output: p/c fun() $1 = 49 '1' (gdb) PASS: gdb.base/call-sc.exp: p/c fun(); call call-sc-tf call Fun(foo) (gdb) PASS: gdb.base/call-sc.exp: call Fun(foo); call call-sc-tf p/c L $2 = 0 '\0' (gdb) FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tf The first "p/c fun()" proves that foo is correctly equal to '1', so after Fun(foo) is called, L should be set to '1' too... -- Joel