This is the mail archive of the cygwin-apps mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Jan Nieuwenhuizen wrote on 22 March 2008 13:03: > Brian Dessent: > > > Note that the Cygwin gcc is not using > --enable-fully-dynamic-string, it > > is using the patch in PR24196 which is a compromise between the > > pessimization of assuming fully dynamic strings and the optimization of > > assuming one global instance of _S_empty_rep_storage. > > Hmm, so I should try a forward-patch of that for 4.1? Can someone give > me some pointers about this? Well, here is an untested port of it to 4.1 for you to play with. We're removing the _S_empty_rep optimisation by 1) removing conditionals so it gets treated the same as all other strings and 2) useing _M_refcopy instead of _M_refdata so it gets the same reference counting behaviour as other strings. > > Also, I'm confused on another issue: if libguile exposes a C++ ABI then > > mixing 4.1 and 3.4 should be incompatible anyway > > AFAIK, 3.4 broke its abi with earlier 3.x exactly because of providing a > 3.x version that was abi-compatible with the (much stricter and > sometimes problematic) 4.x series. In general, you can't even expect compatibility even between X.y and X.z, although most of those abi breaks are smaller. > > , regardless of PR24196, > > by the fact that there are so many g++ changes between those major > > versions. However looking at the exports of the DLL I see no C++ > > symbols. But if libguile does not expose a C++ ABI then why does the > > PR24196-patched gcc cause it to work again? Or is it that it uses C++ > > internally and that is where the std::string-across-DLL-boundaries > > problem occurs? > > libguile does not use C++. As far as I understand, it is a problem that > is introduced while linking the dlls. Hmm, if it's not that then I don't know what, nor why autogen started working for me when I recompiled libguile, but the crashes definitely seemed to unwind through it. cheers, DaveK -- Can't think of a witty .sigline today....
Attachment:
br1.diff
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |