delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2004/09/28/08:22:27

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
From: "Dan Osborne" <dan DOT osborne AT ramesys DOT com>
To: "Cygwin AT Cygwin. Com" <cygwin AT cygwin DOT com>
Subject: RE: Program exited with code 0303000
Date: Tue, 28 Sep 2004 13:21:51 +0100
Message-ID: <004301c4a555$bba08940$eb88510a@internal.specialist.co.uk>
MIME-Version: 1.0
In-Reply-To: <NUTMEGkRlK1F373DVGs00000104@NUTMEG.CAM.ARTIMI.COM>
X-Ramesys-Professional-Services-MailScanner-Information: Please contact the ISP for more information
X-Ramesys-Professional-Services-MailScanner: Found to be clean
X-Ramesys-Professional-Services-MailScanner-SpamCheck: not spam (whitelisted), SpamAssassin (score=2.2, required 5, IN_REP_TO -3.38, SEE_FOR_YOURSELF 2.77, WEIRD_PORT 0.26, SUBJ_HAS_UNIQ_ID 2.54)
Note-from-DJ: This may be spam

Thanks for the reply.

>   Since you've got the code up and running in a debugger, you can set
> breakpoints on abort, exit, and the last line of main, then when
> it hits one
> you can see for yourself from which point your code is exiting and the
> reason why it's returning a non-zero exit code.

I was trying to step through the code in gdb and pin this down so setting
breaks on abort and exit sounds useful. However, both b abort and b exit
give me ...

(gdb) b abort
Breakpoint 1 at 0x401552: file otlv4.h, line 3608.
(gdb) b exit
Note: breakpoint 1 also set at pc 0x401552.
Breakpoint 2 at 0x401552: file otlv4.h, line 3608.

But line 3608 of otlv4.h looks like nothing to do with abort or exit

add_var(i,var,in_out,apl_tab_size);

However, further digging reveals that my program gets to the throw command
here ...

catch ( RProgReturnException e )
{
   throw;
}

and if I step on throw the debugger thinks I'm at ... gues which line?! yes,
line 3608 of otlv4.h ...

(gdb) s
0x1003b115 in __cxa_rethrow () at otlv4.h:3608
3608              add_var(i,var,in_out,apl_tab_size);

and if I step again I get ...

Program exited with code 0303000.

So I'm wondering firstly why gdb seems to have a mismatch between address
and source line number and why that throw didn't get caught in my catch in
main.

Thanks in anticipation and thanks for your input so far,

Dan


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019