Created attachment 300425 [details] test.h dev-libs/boost provides BOOST_JOIN macro: // // Helper macro BOOST_JOIN: // The following piece of macro magic joins the two // arguments together, even when one of the arguments is // itself a macro (see 16.3.1 in C++ standard). The key // is that macro expansion of macro arguments does not // occur in BOOST_DO_JOIN2 but does in BOOST_DO_JOIN. // #define BOOST_JOIN( X, Y ) BOOST_DO_JOIN( X, Y ) #define BOOST_DO_JOIN( X, Y ) BOOST_DO_JOIN2(X,Y) #define BOOST_DO_JOIN2( X, Y ) X##Y This macro is not new in dev-libs/boost:1.48, but it is now used in more places. Some packages (e.g. sci-chemistry/avogadro) use moc and headers of dev-libs/boost. The attached test header shows parse error. (A separate bug is that moc truncates name of header in error message.) $ moc -I/usr/include test.h -o test.moc usr/include/boost-1_48/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN" Line 50 in /usr/include/boost-1_48/boost/type_traits/detail/has_binary_operator.hpp is: namespace BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl) {
Tracking upstream bug ($URL)
Fedora appears to have a workaround: http://pkgs.fedoraproject.org/gitweb/?p=qt.git;a=blob;f=qt-everywhere-opensource-src-4.8.0-rc1-moc-boost148.patch;h=f0ce6564e29e22eac504c538698517bdcef80061;hb=060db3c767b670dc1e168252644c937abc9fe607
I applied the patch of Comment 2 and reemerged qt-core. Afterwards I reemerged media-gfx/freecad-0.12.5284-r2 to avoid bug https://bugs.gentoo.org/show_bug.cgi?id=406261 and I reemerged sci-chemistry/avogadro-1.0.3-r1 to avoid bug https://bugs.gentoo.org/show_bug.cgi?id=406267. Emerging of both packages worked without problems, but the resulting binaries are crashing. Avogadro crashes just after the start with: root@moose:/root(155)# avogadro "Avogadro version: 1.0.3 Git: LibAvogadro version: 1.0.3 Git: " Locale: "C" Libavogadro translations not found. "System has OpenGL support." "About to test OpenGL capabilities." "OpenGL capabilities found: " "Double Buffering." "Direct Rendering." "Antialiasing." Loading plugins: "/usr/bin/../lib64/avogadro/1_0" Searching for plugins in "/usr/lib64/avogadro/1_0/colors" Searching for plugins in "/usr/lib64/avogadro/1_0/engines" Searching for plugins in "/usr/lib64/avogadro/1_0/extensions" Searching for plugins in "/usr/lib64/avogadro/1_0/tools" Searching for plugins in "" Loading plugins: "/root/.avogadro/1_0/plugins" Searching for plugins in "" Searching for plugins in "" Searching for plugins in "" Searching for plugins in "" Searching for plugins in "" QStackedLayout::setCurrentWidget: Widget 0x3199dc0 not contained in stack X Error: BadMatch (invalid parameter attributes) 8 Major opcode: 1 (X_CreateWindow) Resource id: 0x6c00003 X Error: BadWindow (invalid Window parameter) 3 Major opcode: 3 (X_GetWindowAttributes) Resource id: 0x6c00025 Segmentation fault Freecad crashes with illegal storage access, if I try to open iges or occ files, e.g. with/usr/share/doc/opencascade-6.5/examples/data/occ/Bottom.brep or with /usr/share/doc/opencascade-6.5/examples/data/iges/hammer.iges: rose@moose:/home_moose/rose(35)$ FreeCAD FreeCAD 0.11, Libs: 0.11Runknown © Juergen Riegel, Werner Mayer, Yorik van Havre 2001-2011 ##### #### ### #### # # # # # # # ## #### #### # # # # # #### # # # # # # # ##### # # # # #### #### # # # # # # # # # # # # # # ## ## ## # # #### #### ### # # #### ## ## ## No module named StartPage Illegal storage access...
Created attachment 305633 [details] The qt-core-4.8.0-r1.ebuild which I used.
*** Bug 406763 has been marked as a duplicate of this bug. ***
Any news?
(In reply to comment #6) > Any news? Well, you said Fedora's patch makes reverse deps crash so...no, I guess there aren't any good news, at least until we get a response from upstream... :/
just compiled spectrum (http://spectrum.im uses boost) with irc plugin (uses qt) after patching QtCore with proposed patch. works fine =) no crashes =)
(In reply to comment #6) > Any news? No news. We are waiting for upstream to fix it. Unless of course you want to patch qt-core and run a full reverve-dependencies build
*** Bug 408757 has been marked as a duplicate of this bug. ***
Juergen, could you retry fedora's patch with qt-core-4.8.1 and report back if freecad or avogadro still crash? Thank you.
Fixed in qt-core-4.8.1-r2 with the same workaround used in Fedora.
*** Bug 406267 has been marked as a duplicate of this bug. ***
*** Bug 529656 has been marked as a duplicate of this bug. ***