2.4.0 plan for #12215 [LyX crashes with async processes (Qt6 only)] ?

jspitzm at gmail.com jspitzm at gmail.com
Wed Nov 23 11:14:06 UTC 2022


Am Dienstag, dem 22.11.2022 um 22:13 -0500 schrieb Richard Kimberly
Heck:
> Here's the program to check:
> 
> #define _GLIBCXX_DEBUG 1
> #include <unordered_set>
> 
> int main()
> {
>    std::unordered_set<int>::iterator it{};
>    it == it;
> }
> 
> That's what was crashing in GCC.

Does not crash for me.

> 
> I did notice, too, though in the Qt report that it says:
> 
> 
> In general, from the LyX bug report, it looks like they're building
> LyX 
> but not Qt with debug iterators enabled.
> 
> That is a bad idea. libstdc++ debug mode breaks ABI. I don't think we
> ever return any QMap in Qt across its library boundary, but if we
> did, they couldn't use it.
> 
> If you want to turn on debug mode globally, you need to rebuild any
> 3rd 
> party dependency with it. Of course there are the containers in the 
> debug namespace, but I haven't found a good solution to use them at 
> large in a project. I've tried to isolate them in a local namespace,
> but 
> people won't use MyNS::vector (which is either std::vector or 
> stddebug::vector), they'll just use std::vector.
> 
> 
> So, maybe the problem is very specific to --enable-stdlib-debug and
> has to do with the way we use external libraries.

I hope this is not the answer, and I don't need to compile qt myself in
order to use stdlib-debug.

Jürgen

> 
> Riki



More information about the lyx-devel mailing list