delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
X-SWARE-Spam-Status: | No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,SPF_PASS |
X-Spam-Check-By: | sourceware.org |
Message-ID: | <4A50E9C6.4030202@gmail.com> |
Date: | Sun, 05 Jul 2009 18:58:30 +0100 |
From: | Dave Korn <dave DOT korn DOT cygwin AT googlemail DOT com> |
User-Agent: | Thunderbird 2.0.0.17 (Windows/20080914) |
MIME-Version: | 1.0 |
To: | cygwin AT cygwin DOT com |
Subject: | Re: Segmentation fault when exception is thrown or assertion fails [g++/gcc] |
References: | <a15a61310907042018t40f47459m6054bb3772ff62d5 AT mail DOT gmail DOT com> <a15a61310907042043m63b85017kcae8f9362b5fafee AT mail DOT gmail DOT com> <4A50A18B DOT 6070407 AT gmail DOT com> <a15a61310907050921o691fb1a5h173dc35a95d732b1 AT mail DOT gmail DOT com> |
In-Reply-To: | <a15a61310907050921o691fb1a5h173dc35a95d732b1@mail.gmail.com> |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
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 |
Roman Werpachowski wrote: > On Sun, Jul 5, 2009 at 1:50 PM, Dave Korn<XXXX> wrote: >> Well, what happened was that there's a bug somewhere, and while cygwin was >> in the process of dumping the stack trace for the abort caused by your >> assertion firing, > > One more question: how can I use this stack trace to debug genuine > errors? "gdb -c" cannot load it. It's not a full core dump, it's just a stack backtrace in human-readable format. If you copy and paste the addresses in the second column (Function) into "addr2line --exe <path-to-your-executable>" (and assuming you compiled with debug info), it'll turn them into a list of addresses. (Note that in the examples you gave, all the addresses were in the cygwin DLL, because the compiler had optimised the implied abort() call in the assert() in your main() function into a tail-call; effectively your code had already returned from main.) cheers, DaveK -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |