Status: New
Owner: ----

New issue 3835 by [email protected]: change-lowering-unittest.cc does not compile with g++ 4.9.2
https://code.google.com/p/v8/issues/detail?id=3835

$ g++ -v
Using built-in specs.
COLLECT_GCC=/usr/bin/g++
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.9.2/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.9.2-20141101/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.9.2-20141101/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.9.2 20141101 (Red Hat 4.9.2-1) (GCC)

$ make x64.release.quickcheck
# elided
CXX(target) /home/bnoordhuis/src/v8/out/x64.release/obj.target/unittests/test/unittests/compiler/graph-unittest.o
In file included from ../test/unittests/compiler/diamond-unittest.cc:9:0:
.././testing/gmock-support.h:47:43: error: expected template-name before '<' token class BitEqMatcher : public ComparisonBase<BitEqMatcher<Rhs>, Rhs, AnyBitEq> {
                                           ^
.././testing/gmock-support.h:47:43: error: expected '{' before '<' token
.././testing/gmock-support.h:47:43: error: expected unqualified-id before '<' token test/unittests/unittests.target.x64.release.mk:221: recipe for target '/home/bnoordhuis/src/v8/out/x64.release/obj.target/unittests/test/unittests/compiler/diamond-unittest.o' failed make[1]: *** [/home/bnoordhuis/src/v8/out/x64.release/obj.target/unittests/test/unittests/compiler/diamond-unittest.o] Error 1
make[1]: *** Waiting for unfinished jobs....
In file included from ../test/unittests/compiler/change-lowering-unittest.cc:14:0: .././testing/gmock-support.h:47:43: error: expected template-name before '<' token class BitEqMatcher : public ComparisonBase<BitEqMatcher<Rhs>, Rhs, AnyBitEq> {
                                           ^
.././testing/gmock-support.h:47:43: error: expected '{' before '<' token.././testing/gmock-support.h:47:43: error: expected unqualified-id before '<' token ../test/unittests/compiler/change-lowering-unittest.cc: In member function 'testing::Matcher<v8::internal::compiler::Node*> v8::internal::compiler::ChangeLoweringTest::IsAllocate HeapNumber(const testing::Matcher<v8::internal::compiler::Node*>&, const testing::Matcher<v8::internal::compiler::Node*>&)': ../test/unittests/compiler/change-lowering-unittest.cc:82:45: error: invalid use of incomplete type 'class testing::internal::BitEqMatcher<double>'
                   IsNumberConstant(BitEq(0.0)), effect_matcher,
                                             ^
In file included from ../test/unittests/compiler/change-lowering-unittest.cc:14:0: .././testing/gmock-support.h:47:7: error: declaration of 'class testing::internal::BitEqMatcher<double>' class BitEqMatcher : public ComparisonBase<BitEqMatcher<Rhs>, Rhs, AnyBitEq> {
       ^
.././testing/gmock-support.h: In instantiation of 'testing::internal::BitEqMatcher<T> testing::BitEq(const T&) [with T = double]': ../test/unittests/compiler/change-lowering-unittest.cc:82:45: required from here .././testing/gmock-support.h:88:34: error: return type 'class testing::internal::BitEqMatcher<double>' is incomplete
 inline internal::BitEqMatcher<T> BitEq(T const& x) {
                                  ^
.././testing/gmock-support.h:89:37: error: invalid use of incomplete type 'class testing::internal::BitEqMatcher<double>'
   return internal::BitEqMatcher<T>(x);
^.././testing/gmock-support.h:47:7: error: declaration of 'class testing::internal::BitEqMatcher<double>' class BitEqMatcher : public ComparisonBase<BitEqMatcher<Rhs>, Rhs, AnyBitEq> {
       ^
../test/unittests/compiler/change-lowering-unittest.cc:84:3: error: control reaches end of non-void function [-Werror=return-type]
   }
   ^
cc1plus: all warnings being treated as errors

Tested with 4.1.0.10.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to