delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
X-SWARE-Spam-Status: | No, hits=-2.6 required=5.0 tests=BAYES_00,SPF_PASS |
X-Spam-Check-By: | sourceware.org |
Date: | Tue, 08 Dec 2009 21:46:05 -0600 |
From: | Charles Plager <cplager+cygwin AT fnal DOT gov> |
Subject: | Re: [1.7] Possible dynamic linker error |
To: | cygwin AT cygwin DOT com, cdj+cygwin AT fnal DOT gov |
Message-id: | <4B1F1D7D.1000100@fnal.gov> |
MIME-version: | 1.0 |
User-Agent: | Thunderbird 2.0.0.23 (Windows/20090812) |
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 |
Hi Dave, Dave Korn wrote: >> libraries were compiled by me on the same machine using gcc4.3.4). When >> looking at the problem using GDB, it says it is now going to jump to >> subroutine A (finishConstruction()), but instead jumps to subroutine B >> (edm::ValueMap<double>::operator+=). > > This could be just the ordinary sort of thing that goes on when you compile > with optimisation (and hence inlining) turned on. It looks from the earlier > lines like it's just constructed a std::map as part of the PluginFactory or > PluginFactoryBase constructors, so if that edm::ValueMap is a derivation of > std::map it might well be that finishConstruction() is correctly invoking the > += operator to append an item, and gdb is showing you the source of the > inlined operator function. Here's a few pieces of additional information: - I see this behavior with both "standard" level of optimization (whatever that is) and -O0. - If instead of using the 400 Mb DLL, I compile the executable including all of those .o files directly, the program doesn't crash. - I ran rebaseall on cygwin and all of the dlls in questions. It still crashes, but now crashes somewhere else. > So I think first thing you need to do is figure out if maybe it's actually > going the right code path, and has gotten something wrong with the value of j. > Check the value of $eip before and after that final step command and find out > exactly where you're running. I'll try this when I get back to my office. Thanks! Charles -- 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 |