[Bug 209094] science/veusz: Fix build with libc++ 3.8.0
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Apr 27 12:03:32 UTC 2016
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=209094
Bug ID: 209094
Summary: science/veusz: Fix build with libc++ 3.8.0
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: freebsd-ports-bugs at FreeBSD.org
Reporter: dim at FreeBSD.org
CC: devel at stasyan.com
CC: devel at stasyan.com
Flags: maintainer-feedback?(devel at stasyan.com)
Created attachment 169753
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=169753&action=edit
Use plain isfinite() in science/veusz
During the exp-run in bug 208158, it was found that science/veusz gives errors
with libc++ 3.8.0 [1]:
veusz/helpers/src/qtloops/qtloops.cpp:354:10: error: no member named 'isfinite'
in namespace 'std'; did you mean simply 'isfinite'?
if( ! isFinite(val) )
^~~~~~~~~~~~~
veusz/helpers/src/qtloops/isnan.h:58:24: note: expanded from macro 'isFinite'
# define isFinite(_a) (std::isfinite(_a))
^~~~~
This is because the file includes <math.h>, not <cmath>, and the isnan.h header
checks whether isfinite() is a macro. Since it is a function in libc++, it
attempts to use std::isfinite(), which is only defined if you include <cmath>.
Fix this by letting isnan.h always use the plain isfinite() for FreeBSD. This
is similar to how it always selects the plain isnan() for FreeBSD, just above
that definition.
[1]
http://package18.nyi.freebsd.org/data/headamd64PR208158-default/2016-03-22_18h30m05s/logs/errors/veusz-1.19.1_2.log
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-ports-bugs
mailing list