Package: g++-4.6 Version: 4.6.1-10 Severity: important Tags: patch Forwarded: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50442
Hi, libreoffices (and apparently also mozilla, see below) build fails since 4.6.1-10. Build log details in http://lists.freedesktop.org/archives/libreoffice/2011-September/018386.html: [ build CXX ] vcl/unx/gtk/a11y/atkutil R=/home/luc/git && S=$R/core && O=$S/solver/unxlngx6.pro && W=$S/workdir/unxlngx6.pro && mkdir -p $W/CxxObject/vcl/unx/gtk/a11y/ $W/Dep/CxxObject/vcl/unx/gtk/a11y/ && ccache g++ -DCPPU_ENV=gcc3 -DCUI -DENABLE_GRAPHITE -DENABLE_GTK -DENABLE_LAYOUT=0 -DENABLE_LAYOUT_EXPERIMENTAL=0 -DGCC -DGXX_INCLUDE_PATH=/usr/include/c++/4.6 -DHAVE_GCC_VISIBILITY_FEATURE -DLINUX -DNDEBUG -DOPTIMIZE -DOSL_DEBUG_LEVEL=0 -DPRODUCT -DPRODUCT_FULL -DSOLAR_JAVA -DSUPD=350 -DUNIX - DUNX -DVCL -DX86_64 -D_PTHREADS -D_REENTRANT -DVCLPLUG_GTK_IMPLEMENTATION -DVERSION=\"350m1\" -Wall -Wendif-labels -Wextra -Wshadow -Woverloaded-virtual -Wno-non-virtual-dtor -fPIC -fmessage-length=0 -fno-common -pipe -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -Wno-deprecated-declarations -DEXCEPTIONS_ON -fexceptions -fno-enforce-eh-specs -O2 -c $S/vcl/unx/gtk/a11y/atkutil.cxx -o $W/CxxObject/vcl/unx/gtk/a11y/atkutil.o -MMD -MT $W/ CxxObject/vcl/unx/gtk/a11y/atkutil.o -MP -MF $W/Dep/CxxObject/vcl/unx/gtk/a11y/atkutil.d -I$S/vcl/unx/gtk/a11y/ -I$O/inc/stl -I$O/inc/external -I$O/inc -I$S/solenv/unxlngx6/inc -I$S/solenv/inc -I$S/res -I$S/solenv/inc/Xp31 -I/usr/lib/jvm/java-6-openjdk-amd64/include -I/usr/lib/jvm/java-6-openjdk-amd64/include/linux -I/usr/lib/jvm/java-6-openjdk-amd64/include/native_threads/include -I$S/vcl/inc -I$S/vcl/inc/pch -I$S/solenv/inc -I$O/inc -I$O/inc/offapi -I$O/ inc/udkapi -pthread -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/cairo -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include /home/luc/git/core/vcl/unx/gtk/a11y/atkutil.cxx: In member function ‘void DocumentFocusListener::attachRecursive(const com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible>&, const com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleContext>&, const com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleStateSet>&)’: /home/luc/git/core/vcl/unx/gtk/a11y/atkutil.cxx:322:60: error: call of overloaded ‘insert(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleEventBroadcaster>&)’ is ambiguous /home/luc/git/core/vcl/unx/gtk/a11y/atkutil.cxx:322:60: note: candidates are: /usr/include/c++/4.6/bits/stl_set.h:407:7: note: std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = com::sun::star::uno::Reference<com::sun::star::uno::XInterface>, _Compare = std::less<com::sun::star::uno::Reference<com::sun::star::uno::XInterface> >, _Alloc = std::allocator<com::sun::star::uno:: Reference<com::sun::star::uno::XInterface> >, typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<com::sun::star::uno::Reference<com::sun::star::uno::XInterface> >, std::set<_Key, _Compare, _Alloc>::value_type = com::sun::star::uno::Reference<com::sun::star::uno::XInterface>] /usr/include/c++/4.6/bits/stl_set.h:416:7: note: std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = com::sun::star::uno::Reference<com::sun::star::uno::XInterface>, _Compare = std::less<com::sun::star::uno::Reference<com::sun::star::uno::XInterface> >, _Alloc = std:: allocator<com::sun::star::uno::Reference<com::sun::star::uno::XInterface> >, typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<com::sun::star::uno::Reference<com::sun::star::uno::XInterface> >, std::set<_Key, _Compare, _Alloc>::value_type = com::sun::star::uno::Reference<com::sun::star::uno::XInterface>] I reverted to gcc-4.5 for now but that of course fails with gcj-using archs.. see http://lists.freedesktop.org/archives/libreoffice/2011-September/018423.html and the attached complete interdiff for the fix. Grüße/Regards, René
diff -u gcc-4.6-4.6.1/debian/rules.patch gcc-4.6-4.6.1/debian/rules.patch --- gcc-4.6-4.6.1/debian/rules.patch +++ gcc-4.6-4.6.1/debian/rules.patch @@ -81,6 +81,7 @@ pr49944 \ libjava-r176199 \ gcc-cloog-dl \ + pr50442 \ $(if $(filter yes, $(DEB_CROSS)),,gcc-print-file-name) \ # libstdc++-nothumb-check \ diff -u gcc-4.6-4.6.1/debian/changelog gcc-4.6-4.6.1/debian/changelog --- gcc-4.6-4.6.1/debian/changelog +++ gcc-4.6-4.6.1/debian/changelog @@ -1,3 +1,11 @@ +gcc-4.6 (4.6.1-11.1) unstable; urgency=low + + [ Rene Engelhard ] + * Non-maintainer upload. + * Add patch for PR c++/50442, reverting fix for PR c++/49267 + + -- Rene Engelhard <r...@debian.org> Mon, 19 Sep 2011 17:57:52 +0200 + gcc-4.6 (4.6.1-11) unstable; urgency=low * Update to SVN 20110917 (r178926) from the gcc-4_6-branch. diff -u gcc-4.6-4.6.1/debian/patches/svn-updates.diff gcc-4.6-4.6.1/debian/patches/svn-updates.diff --- gcc-4.6-4.6.1/debian/patches/svn-updates.diff +++ gcc-4.6-4.6.1/debian/patches/svn-updates.diff @@ -6849,8 +6849,8 @@ + Index: gcc/testsuite/g++.dg/cpp0x/rv-conv1.C =================================================================== ---- a/src/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C (.../tags/gcc_4_6_1_release) -+++ b/src/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C (.../branches/gcc-4_6-branch) +--- a/src/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C (.../tags/gcc_4_6_1_release) ++++ b/src/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C (.../branches/gcc-4_6-branch) @@ -0,0 +1,9 @@ +// PR c++/49267 +// { dg-options -std=c++0x } only in patch2: unchanged: --- gcc-4.6-4.6.1.orig/debian/patches/pr50442.diff +++ gcc-4.6-4.6.1/debian/patches/pr50442.diff @@ -0,0 +1,52 @@ +2011-09-17 Jason Merrill <ja...@redhat.com> + + PR c++/50442 + Revert: + PR c++/49267 + * call.c (compare_ics): rvaluedness_matches_p can differ + based on the source type, not just target. + +--- a/src/gcc/cp/call.c 2011/09/17 20:49:34 178931 ++++ b/src/gcc/cp/call.c 2011/09/17 22:35:10 178932 +@@ -7545,13 +7545,13 @@ + + if (ref_conv1 && ref_conv2) + { +- if (!ref_conv1->this_p && !ref_conv2->this_p) ++ if (!ref_conv1->this_p && !ref_conv2->this_p ++ && (TYPE_REF_IS_RVALUE (ref_conv1->type) ++ != TYPE_REF_IS_RVALUE (ref_conv2->type))) + { +- if (ref_conv1->rvaluedness_matches_p +- > ref_conv2->rvaluedness_matches_p) ++ if (ref_conv1->rvaluedness_matches_p) + return 1; +- if (ref_conv2->rvaluedness_matches_p +- > ref_conv1->rvaluedness_matches_p) ++ if (ref_conv2->rvaluedness_matches_p) + return -1; + } + + + + + +2011-09-17 Jason Merrill <ja...@redhat.com> + + PR c++/50442 + Revert: + PR c++/49267 + * g++.dg/cpp0x/rv-conv1.C: New. + +--- a/src/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C (.../tags/gcc_4_6_1_release) ++++ b/src/gcc/testsuite/g++.dg/cpp0x/rv-conv1.C (.../branches/gcc-4_6-branch) +@@ -1,9 +0,0 @@ +-// PR c++/49267 +-// { dg-options -std=c++0x } +- +-struct X { +- operator int&(); +- operator int&&(); +-}; +- +-int&&x = X();