Bug#831159: psurface: FTBFS with GCC 6: NormalProjector.cpp:1337:22: error: 'isnan' was not declared in this scope
Lucas Nussbaum
lucas at debian.org
Thu Jul 14 07:21:46 UTC 2016
Source: psurface
Version: 2.0.0-1.1
Severity: serious
Tags: stretch sid
User: debian-qa at lists.debian.org
Usertags: qa-ftbfs-20160713 qa-ftbfs
Justification: FTBFS with GCC 6 on amd64
Hi,
During a rebuild of all packages in sid using the gcc-defaults package
available in experimental to make GCC default to version 6, your package failed
to build on amd64. For more information about GCC 6 and Stretch, see:
- https://wiki.debian.org/GCC6
- https://lists.debian.org/debian-devel-announce/2016/06/msg00007.html
Relevant part (hopefully):
> /bin/bash ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I./include/psurface -DPSURFACE_STANDALONE -Wdate-time -D_FORTIFY_SOURCE=2 -DNDEBUG -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -c -o libpsurface_la-NormalProjector.lo `test -f 'NormalProjector.cpp' || echo './'`NormalProjector.cpp
> libtool: compile: g++ -DHAVE_CONFIG_H -I. -I./include/psurface -DPSURFACE_STANDALONE -Wdate-time -D_FORTIFY_SOURCE=2 -DNDEBUG -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -c NormalProjector.cpp -fPIC -DPIC -o .libs/libpsurface_la-NormalProjector.o
> NormalProjector.cpp: In instantiation of 'bool psurface::NormalProjector<ctype>::computeInverseNormalProjection(const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, psurface::StaticVector<ctype, 3>&) [with ctype = float]':
> NormalProjector.cpp:1841:34: required from here
> NormalProjector.cpp:1337:22: error: 'isnan' was not declared in this scope
> if (isnan(r[1]) || isinf(r[1]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1337:22: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1337:37: error: 'isinf' was not declared in this scope
> if (isnan(r[1]) || isinf(r[1]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1337:37: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1342:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q +r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1342:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1342:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q +r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1342:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1348:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q + r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1348:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1348:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q + r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1348:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp: In instantiation of 'bool psurface::NormalProjector<ctype>::edgeIntersectsNormalFan(const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, psurface::StaticVector<ctype, 3>&) [with ctype = float]':
> NormalProjector.cpp:1841:34: required from here
> NormalProjector.cpp:1484:22: error: 'isnan' was not declared in this scope
> if (isnan(r[0]) || isinf(r[0]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1484:22: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1484:37: error: 'isinf' was not declared in this scope
> if (isnan(r[0]) || isinf(r[0]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1484:37: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1490:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 +r[2]*r[0]*n10 -r[1]*q10).length()<1e-3 )
> ~~~~~^~~~~~
> NormalProjector.cpp:1490:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1490:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 +r[2]*r[0]*n10 -r[1]*q10).length()<1e-3 )
> ~~~~~^~~~~~
> NormalProjector.cpp:1490:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1496:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 + r[2]*r[0]*n10 -r[1]*q10).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1496:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1496:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 + r[2]*r[0]*n10 -r[1]*q10).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1496:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp: In instantiation of 'bool psurface::NormalProjector<ctype>::computeInverseNormalProjection(const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, psurface::StaticVector<ctype, 3>&) [with ctype = double]':
> NormalProjector.cpp:1842:34: required from here
> NormalProjector.cpp:1337:22: error: 'isnan' was not declared in this scope
> if (isnan(r[1]) || isinf(r[1]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1337:22: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1337:37: error: 'isinf' was not declared in this scope
> if (isnan(r[1]) || isinf(r[1]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1337:37: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1342:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q +r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1342:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1342:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q +r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1342:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1348:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q + r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1348:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1348:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[0]) || isinf(r[0])) && (p2q + r[0]*p02 + r[1]*p12 + r[2]*r[0]*n02+r[2]*r[1]*n12+r[2]*n2).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1348:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp: In instantiation of 'bool psurface::NormalProjector<ctype>::edgeIntersectsNormalFan(const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, const psurface::StaticVector<ctype, 3>&, psurface::StaticVector<ctype, 3>&) [with ctype = double]':
> NormalProjector.cpp:1842:34: required from here
> NormalProjector.cpp:1484:22: error: 'isnan' was not declared in this scope
> if (isnan(r[0]) || isinf(r[0]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1484:22: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1484:37: error: 'isinf' was not declared in this scope
> if (isnan(r[0]) || isinf(r[0]))
> ~~~~~^~~~~~
> NormalProjector.cpp:1484:37: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1490:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 +r[2]*r[0]*n10 -r[1]*q10).length()<1e-3 )
> ~~~~~^~~~~~
> NormalProjector.cpp:1490:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1490:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 +r[2]*r[0]*n10 -r[1]*q10).length()<1e-3 )
> ~~~~~^~~~~~
> NormalProjector.cpp:1490:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1496:24: error: 'isnan' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 + r[2]*r[0]*n10 -r[1]*q10).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1496:24: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:655:5: note: 'std::isnan'
> isnan(_Tp __x)
> ^~~~~
> NormalProjector.cpp:1496:39: error: 'isinf' was not declared in this scope
> if (!(isnan(r[1]) || isinf(r[1])) && (p0q0 + r[0]*p10 + r[2]*n0 + r[2]*r[0]*n10 -r[1]*q10).length()<1e-3)
> ~~~~~^~~~~~
> NormalProjector.cpp:1496:39: note: suggested alternative:
> In file included from StaticVector.h:22:0,
> from NormalProjector.h:4,
> from NormalProjector.cpp:4:
> /usr/include/c++/6/cmath:630:5: note: 'std::isinf'
> isinf(_Tp __x)
> ^~~~~
> make[3]: *** [libpsurface_la-NormalProjector.lo] Error 1
The full build log is available from:
http://people.debian.org/~lucas/logs/2016/07/13/psurface_2.0.0-1.1_unstable_gcc6.log
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.
More information about the debian-science-maintainers
mailing list