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

Bug#701345: qtwebkit: ftbfs with GCC-4.8



Package: src:qtwebkit
Version: 2.2.1-5
Severity: important
Tags: sid jessie
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-4.8

The package fails to build in a test rebuild on at least amd64 with
gcc-4.8/g++-4.8, but succeeds to build with gcc-4.7/g++-4.7. The
severity of this report may be raised before the jessie release.

  ./wtf/Assertions.h:326:47: error: typedef 'dummyWTF_bitwise_cast_sizeof_casted_types_is_equal' locally defined but not used [-Werror=unused-local-typedefs]

The full build log can be found at:
http://people.debian.org/~doko/logs-20130217/gcc48/qtwebkit_2.2.1-5_unstable_gcc48.log
The last lines of the build log are at the end of this report.

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

  apt-get -t experimental install g++ g++-4.7 g++-4.8 libc6-dev

The test rebuild was done with eglibc-2.17 and GCC-4.8, so some issues
might be caused by the updated glibc.

[...]
./wtf/StringHasher.h: In static member function 'static unsigned int WTF::StringHasher::hashMemory(const void*)':
./wtf/Assertions.h:326:47: error: typedef 'dummylength_must_be_a_multible_of_four' locally defined but not used [-Werror=unused-local-typedefs]
 #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1]
                                               ^
./wtf/StringHasher.h:140:9: note: in expansion of macro 'COMPILE_ASSERT'
         COMPILE_ASSERT(!(length % 4), length_must_be_a_multible_of_four);
         ^
./wtf/PassOwnPtr.h: In member function 'bool WTF::PassOwnPtr<T>::operator==(const WTF::PassOwnPtr<U>&)':
./wtf/Assertions.h:326:47: error: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Werror=unused-local-typedefs]
 #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1]
                                               ^
./wtf/PassOwnPtr.h:95:70: note: in expansion of macro 'COMPILE_ASSERT'
         template<typename U> bool operator==(const PassOwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; }
                                                                      ^
./wtf/PassOwnPtr.h: In member function 'bool WTF::PassOwnPtr<T>::operator!=(const WTF::PassOwnPtr<U>&)':
./wtf/Assertions.h:326:47: error: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Werror=unused-local-typedefs]
 #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1]
                                               ^
./wtf/PassOwnPtr.h:96:70: note: in expansion of macro 'COMPILE_ASSERT'
         template<typename U> bool operator!=(const PassOwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; }
                                                                      ^
./wtf/PassOwnPtr.h: In member function 'bool WTF::PassOwnPtr<T>::operator==(const WTF::OwnPtr<U>&)':
./wtf/Assertions.h:326:47: error: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Werror=unused-local-typedefs]
 #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1]
                                               ^
./wtf/PassOwnPtr.h:97:66: note: in expansion of macro 'COMPILE_ASSERT'
         template<typename U> bool operator==(const OwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; }
                                                                  ^
./wtf/PassOwnPtr.h: In member function 'bool WTF::PassOwnPtr<T>::operator!=(const WTF::OwnPtr<U>&)':
./wtf/Assertions.h:326:47: error: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Werror=unused-local-typedefs]
 #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1]
                                               ^
./wtf/PassOwnPtr.h:98:66: note: in expansion of macro 'COMPILE_ASSERT'
         template<typename U> bool operator!=(const OwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; }
                                                                  ^
cc1plus: all warnings being treated as errors
make[3]: *** [obj/release/dtoa.o] Error 1
cc1plus: all warnings being treated as errors
make[3]: *** [obj/release/YarrPattern.o] Error 1
cc1plus: all warnings being treated as errors
make[3]: *** [obj/release/DateMath.o] Error 1
make[3]: Leaving directory `/«PKGBUILDDIR»/Source/JavaScriptCore'
make[2]: *** [sub-JavaScriptCore-JavaScriptCore-pro-make_default-ordered] Error 2
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory `/«PKGBUILDDIR»/Source'
dh_auto_build: make -j10 returned exit code 2
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory `/«PKGBUILDDIR»'
make: *** [build-arch] Error 2
dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2


Reply to: