[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#925661: cppunit: ftbfs with GCC-9



Package: src:cppunit
Version: 1.14.0-3
Severity: normal
Tags: sid bullseye
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-9

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-9/g++-9, but succeeds to build with gcc-8/g++-8. The
severity of this report will be raised before the bullseye release,
so nothing has to be done for the buster release.

The full build log can be found at:
http://people.debian.org/~doko/logs/gcc9-20190321/cppunit_1.14.0-3_unstable_gcc9.log
The last lines of the build log are at the end of this report.

To build with GCC 9, either set CC=gcc-9 CXX=g++-9 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-9/porting_to.html

GCC 9 also passes the linker option --as-needed by default; typical
build issues are passing libraries before object files to the linker,
or underlinking of convenience libraries built from the same source.

[...]
../../include/cppunit/extensions/Orthodox.h:56:38:   required from here
../../include/cppunit/extensions/Orthodox.h:77:23: error: implicitly-declared 'constexpr OrthodoxTest::Value::Value(const OrthodoxTest::Value&)' is deprecated [-Werror=deprecated-copy]
   77 |     CPPUNIT_ASSERT (c == call (a));
../../include/cppunit/TestAssert.h:240:37: note: in definition of macro 'CPPUNIT_ASSERT'
  240 |   ( CPPUNIT_NS::Asserter::failIf( !(condition),                                   \
      |                                     ^~~~~~~~~
In file included from OrthodoxTest.cpp:2:
OrthodoxTest.h:41:12: note: because 'OrthodoxTest::Value' has user-provided 'OrthodoxTest::Value& OrthodoxTest::Value::operator=(const OrthodoxTest::Value&)'
   41 |     Value& operator= ( const Value& v )
      |            ^~~~~~~~
In file included from OrthodoxTest.cpp:3:
../../include/cppunit/extensions/Orthodox.h:87:63: note:   initializing argument 1 of 'ClassUnderTest CppUnit::Orthodox<ClassUnderTest>::call(ClassUnderTest) [with ClassUnderTest = OrthodoxTest::Value]'
   87 | ClassUnderTest Orthodox<ClassUnderTest>::call (ClassUnderTest object)
      |                                                ~~~~~~~~~~~~~~~^~~~~~
In file included from ../../include/cppunit/TestCase.h:6,
                 from ../../include/cppunit/TestCaller.h:5,
                 from ../../include/cppunit/extensions/HelperMacros.h:9,
                 from OrthodoxTest.h:4,
                 from OrthodoxTest.cpp:2:
../../include/cppunit/extensions/Orthodox.h:80:23: error: implicitly-declared 'constexpr OrthodoxTest::Value::Value(const OrthodoxTest::Value&)' is deprecated [-Werror=deprecated-copy]
   80 |     CPPUNIT_ASSERT (c == call (b));
../../include/cppunit/TestAssert.h:240:37: note: in definition of macro 'CPPUNIT_ASSERT'
  240 |   ( CPPUNIT_NS::Asserter::failIf( !(condition),                                   \
      |                                     ^~~~~~~~~
In file included from OrthodoxTest.cpp:2:
OrthodoxTest.h:41:12: note: because 'OrthodoxTest::Value' has user-provided 'OrthodoxTest::Value& OrthodoxTest::Value::operator=(const OrthodoxTest::Value&)'
   41 |     Value& operator= ( const Value& v )
      |            ^~~~~~~~
In file included from OrthodoxTest.cpp:3:
../../include/cppunit/extensions/Orthodox.h:87:63: note:   initializing argument 1 of 'ClassUnderTest CppUnit::Orthodox<ClassUnderTest>::call(ClassUnderTest) [with ClassUnderTest = OrthodoxTest::Value]'
   87 | ClassUnderTest Orthodox<ClassUnderTest>::call (ClassUnderTest object)
      |                                                ~~~~~~~~~~~~~~~^~~~~~
../../include/cppunit/extensions/Orthodox.h: In instantiation of 'ClassUnderTest CppUnit::Orthodox<ClassUnderTest>::call(ClassUnderTest) [with ClassUnderTest = OrthodoxTest::ValueBadAssignment]':
../../include/cppunit/extensions/Orthodox.h:77:5:   required from 'void CppUnit::Orthodox<ClassUnderTest>::runTest() [with ClassUnderTest = OrthodoxTest::ValueBadAssignment]'
../../include/cppunit/extensions/Orthodox.h:56:38:   required from here
../../include/cppunit/extensions/Orthodox.h:89:12: error: implicitly-declared 'constexpr OrthodoxTest::ValueBadAssignment::ValueBadAssignment(const OrthodoxTest::ValueBadAssignment&)' is deprecated [-Werror=deprecated-copy]
   89 |     return object;
      |            ^~~~~~
In file included from OrthodoxTest.cpp:2:
OrthodoxTest.h:159:25: note: because 'OrthodoxTest::ValueBadAssignment' has user-provided 'OrthodoxTest::ValueBadAssignment& OrthodoxTest::ValueBadAssignment::operator=(const OrthodoxTest::ValueBadAssignment&)'
  159 |     ValueBadAssignment &operator =( const ValueBadAssignment & )
      |                         ^~~~~~~~
In file included from OrthodoxTest.cpp:3:
../../include/cppunit/extensions/Orthodox.h: In instantiation of 'ClassUnderTest CppUnit::Orthodox<ClassUnderTest>::call(ClassUnderTest) [with ClassUnderTest = OrthodoxTest::Value]':
../../include/cppunit/extensions/Orthodox.h:77:5:   required from 'void CppUnit::Orthodox<ClassUnderTest>::runTest() [with ClassUnderTest = OrthodoxTest::Value]'
../../include/cppunit/extensions/Orthodox.h:56:38:   required from here
../../include/cppunit/extensions/Orthodox.h:89:12: error: implicitly-declared 'constexpr OrthodoxTest::Value::Value(const OrthodoxTest::Value&)' is deprecated [-Werror=deprecated-copy]
   89 |     return object;
      |            ^~~~~~
In file included from OrthodoxTest.cpp:2:
OrthodoxTest.h:41:12: note: because 'OrthodoxTest::Value' has user-provided 'OrthodoxTest::Value& OrthodoxTest::Value::operator=(const OrthodoxTest::Value&)'
   41 |     Value& operator= ( const Value& v )
      |            ^~~~~~~~
g++ -DHAVE_CONFIG_H -I. -I../..  -I../../include -I../../include -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Werror -Wall -Wextra -pedantic -c -o RepeatedTestTest.o RepeatedTestTest.cpp
g++ -DHAVE_CONFIG_H -I. -I../..  -I../../include -I../../include -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Werror -Wall -Wextra -pedantic -c -o StringToolsTest.o StringToolsTest.cpp
cc1plus: all warnings being treated as errors
make[5]: *** [Makefile:754: OrthodoxTest.o] Error 1
make[5]: *** Waiting for unfinished jobs....
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/cppunittest'
make[4]: *** [Makefile:1025: check-am] Error 2
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/cppunittest'
make[3]: *** [Makefile:381: check-recursive] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/examples'
make[2]: *** [Makefile:576: check-recursive] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_test: make -j4 check VERBOSE=1 returned exit code 2
make[1]: *** [debian/rules:17: override_dh_auto_test] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:6: build-arch] Error 2
dpkg-buildpackage: error: debian/rules build-arch subprocess returned exit status 2


Reply to: