Package: dart Version: 6.9.5-4 Severity: serious Tags: patch Justification: ftbfs User: ubuntu-de...@lists.ubuntu.com Usertags: origin-ubuntu jammy ubuntu-patch
Hi José Luís, In rebuilding packages in Ubuntu for the liburdfdom-model package rename, I found that dart currently fails to build from source: /tmp/dart-6.9.5/unittests/unit/test_Signal.cpp: In member function 'virtual void Signal_NonStaticMemberFunction_Test::TestBody()': /tmp/dart-6.9.5/unittests/unit/test_Signal.cpp:118:9: error: reference to 'placeholders' is ambiguous 118 | using placeholders::_1; | ^~~~~~~~~~~~ In file included from /usr/include/eigen3/Eigen/Core:265, from /tmp/dart-6.9.5/obj-x86_64-linux-gnu/dart/config.hpp:5, from /tmp/dart-6.9.5/dart/dart.hpp:33, from /tmp/dart-6.9.5/unittests/unit/test_Signal.cpp:36: /usr/include/eigen3/Eigen/src/Core/util/IndexedViewHelper.h:174:11: note: candidates are: 'namespace Eigen::placeholders { }' 174 | namespace placeholders { | ^~~~~~~~~~~~ In file included from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /tmp/dart-6.9.5/unittests/gtest/include/gtest/internal/gtest-port.h:284, from /tmp/dart-6.9.5/unittests/gtest/include/gtest/internal/gtest-internal.h:40, from /tmp/dart-6.9.5/unittests/gtest/include/gtest/gtest.h:59, from /tmp/dart-6.9.5/unittests/unit/test_Signal.cpp:34: /usr/include/c++/11/functional:219:13: note: 'namespace std::placeholders { }' 219 | namespace placeholders | ^~~~~~~~~~~~ Please find attached a patch that disambiguates and lets the package build. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer https://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
diff -Nru dart-6.9.5/debian/patches/series dart-6.9.5/debian/patches/series --- dart-6.9.5/debian/patches/series 2021-10-08 07:07:34.000000000 -0700 +++ dart-6.9.5/debian/patches/series 2021-12-14 21:44:11.000000000 -0800 @@ -5,3 +5,4 @@ 0007-fix-soversion.patch 0006-Reduce-test-result-accuracy-to-fix-i386.patch 0008-fix-cmake-example.patch +stdc++.patch diff -Nru dart-6.9.5/debian/patches/stdc++.patch dart-6.9.5/debian/patches/stdc++.patch --- dart-6.9.5/debian/patches/stdc++.patch 1969-12-31 16:00:00.000000000 -0800 +++ dart-6.9.5/debian/patches/stdc++.patch 2021-12-15 07:49:05.000000000 -0800 @@ -0,0 +1,22 @@ +Description: disambiguate 'placeholders' namespace + Eigen now has a 'placeholders' namespace, so specify that we're after + std::placeholders +Author: Steve Langasek <steve.langa...@ubuntu.com> +Last-Update: 2021-12-15 +Forwarded: no + +Index: dart-6.9.5/unittests/unit/test_Signal.cpp +=================================================================== +--- dart-6.9.5.orig/unittests/unit/test_Signal.cpp ++++ dart-6.9.5/unittests/unit/test_Signal.cpp +@@ -115,8 +115,8 @@ + signal2.connect(&Viewer::onSignal2Static); + + // Connect non-static member function +- using placeholders::_1; +- using placeholders::_2; ++ using std::placeholders::_1; ++ using std::placeholders::_2; + signal1.connect(bind(&Viewer::onSignal1, &viewer, _1)); + signal2.connect(bind(&Viewer::onSignal2, &viewer, _1, _2)); +