From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11111 invoked by alias); 7 Sep 2006 16:15:56 -0000 Received: (qmail 11100 invoked by uid 22791); 7 Sep 2006 16:15:55 -0000 X-Spam-Check-By: sourceware.org Received: from mail.imc-berlin.de (HELO mail.imc-berlin.de) (217.110.46.186) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 07 Sep 2006 16:15:51 +0000 Received: from mailserver.berlin.imc-berlin.de (mailserver.berlin.imc-berlin.de [10.0.0.19]) by mail.imc-berlin.de (Postfix) with ESMTP id AE4052F026; Thu, 7 Sep 2006 19:10:04 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mailserver.berlin.imc-berlin.de (Postfix) with ESMTP id 0A371A345; Thu, 7 Sep 2006 18:15:48 +0200 (CEST) Received: from [10.0.2.29] (zarges.berlin.imc-berlin.de [10.0.2.29]) by mailserver.berlin.imc-berlin.de (Postfix) with ESMTP id 288979BD2; Thu, 7 Sep 2006 18:15:47 +0200 (CEST) Message-ID: <450045B5.1070402@imc-berlin.de> Date: Thu, 07 Sep 2006 16:15:00 -0000 From: "Zarges, Olav" User-Agent: Thunderbird 1.5.0.5 (Windows/20060719) MIME-Version: 1.0 To: "gdb@sourceware.org" Cc: Daniel Jacobowitz Subject: Re: gdb-6.5 produces infinite backtrace on ARM References: <44E181DE.7040905@imc-berlin.de> <20060815124053.GA18496@nevyn.them.org> <20060819052434.GA15612@nevyn.them.org> <44E999B4.5030905@imc-berlin.de> <20060821124241.GA16416@nevyn.them.org> <44FECDF7.2050900@imc-berlin.de> <20060906144356.GA2786@nevyn.them.org> <44FEE32E.60401@imc-berlin.de> <20060906151915.GA4002@nevyn.them.org> <44FEEB57.6010807@imc-berlin.de> <20060906155248.GA4902@nevyn.them.org> In-Reply-To: <20060906155248.GA4902@nevyn.them.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-09/txt/msg00044.txt.bz2 Daniel Jacobowitz wrote: >> The stack-list-frames command does not return any stack info at all if >> error(...) is called. Therefore CDT is not discarding anything. The is >> just the error message. > > Sorry - I misread your trace. OK, I see what's generally wrong... Glad to hear... In order to supply other members of our dev-team with a working gdb I tried to apply the patch you published on http://sourceware.org/ml/gdb-patches/2006-08/msg00131.html to the gdb-6.5-release I use. But the files did not match. CVS-head didn't work either. You probably have a revised version. Then I just added my changes (warnings instead of errors) and your new frame_register_unwind_location() function and its invocation to gdb-6.5-release source tree. Gdb then crashes after hitting the second breakpoint. It works if you patch your patch: =================================================================== int *optimizedp, enum lval_type *lvalp, CORE_ADDR *addrp, int *realnump) { - while (this_frame->level >= 0) + while (this_frame != 0 && this_frame->level >= 0) Do you plan to publish a patch on top of gdb-6.5-release for this issue? -- Olav A. Zarges