unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Isnan
@ 2016-07-31 10:35 Andreas Enge
  2016-07-31 10:44 ` Isnan Danny Milosavljevic
  0 siblings, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2016-07-31 10:35 UTC (permalink / raw)
  To: guix-devel

Hello,

has anyone followed what the deal is with isnan in core-updates? A number
of C++ packages does not build any more. For instance, dealii:
solver_control.cc:96:24: error: ‘isnan’ was not declared in this scope
       isnan(check_value) ||
                        ^
[ 30%] Building CXX object source/lac/CMakeFiles/obj_lac.debug.dir/solver_control.cc.o
cd /tmp/guix-build-dealii-8.2.1.drv-0/build/source/lac && /gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -DDEBUG -I/tmp/guix-build-dealii-8.2.1.drv-0/build/source/lac -I/tmp/guix-build-dealii-8.2.1.drv-0/build/include -I/tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/include -I/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/include -I/gnu/store/f51hs67f3g1r15fy9xq4bi7m3z991p0j-tbb-4.3.2/include -I/gnu/store/5992iq1v7arqa14ym3di58n4la0893nv-zlib-1.2.8/include -I/gnu/store/5qp29kq39b23w0sb1306fhsrq0zfm6sl-suitesparse-4.4.3/include -I/gnu/store/693zbcqs6jv8zg7k1x8x8k3sm7fimqs0-boost-1.60.0/include -I/gnu/store/8vqdr67rfbxk12bl3gajshkiffn8l9ld-muparser-2.2.5-2/include  -pedantic -fpic -Wall -Wpointer-arith -Wwrite-strings -Wsynth -Wsign-compare -Wswitch -Wno-unused-local-typedefs -Wno-long-long -Wno-deprecated -Wno-deprecated-declarations -fopenmp-simd -std=c++11 -Og -ggdb -Wa,--compress-debug-sections -o CMakeFiles/obj_lac.debug.dir/solver_control.cc.o -c /tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/source/lac/solver_control.cc
/tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/source/lac/solver_control.cc: In member function ‘virtual dealii::SolverControl::State dealii::SolverControl::check(unsigned int, double)’:
/tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/source/lac/solver_control.cc:96:24: error: ‘isnan’ was not declared in this scope
       isnan(check_value) ||
                        ^
/tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/source/lac/solver_control.cc:96:24: note: suggested alternative:
In file included from /gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/include/c++/complex:44:0,
                 from /tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/include/deal.II/base/numbers.h:22,
                 from /tmp/guix-build-dealii-8.2.1.drv-0/build/include/deal.II/base/config.h:579,
                 from /tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/include/deal.II/base/logstream.h:19,
                 from /tmp/guix-build-dealii-8.2.1.drv-0/dealii-8.2.1/source/lac/solver_control.cc:16:
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/include/c++/cmath:632:5: note:   ‘std::isnan’
     isnan(_Tp __x)

Apparently the "std::" is missing in front of "isnan"; should this not be implicit?

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Isnan
  2016-07-31 10:35 Isnan Andreas Enge
@ 2016-07-31 10:44 ` Danny Milosavljevic
  2016-07-31 11:06   ` Isnan Andreas Enge
  0 siblings, 1 reply; 6+ messages in thread
From: Danny Milosavljevic @ 2016-07-31 10:44 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

> Apparently the "std::" is missing in front of "isnan"; should this not be implicit?

No. Many people in the C++ community frowns upon even doing "using namespace std" at all, never mind implicitly.

http://stackoverflow.com/questions/1265039/using-std-namespace

If you include math.h , isnan is called ::isnan .
If you include cmath , isnan is called std::isnan .

Also, std::isnan was added with C++11, so it's a new feature. Are you compiling with a C++11 compiler? What are the compiler flags used?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Isnan
  2016-07-31 10:44 ` Isnan Danny Milosavljevic
@ 2016-07-31 11:06   ` Andreas Enge
  2016-07-31 14:42     ` Isnan Andreas Enge
  0 siblings, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2016-07-31 11:06 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

On Sun, Jul 31, 2016 at 12:44:27PM +0200, Danny Milosavljevic wrote:
> > Apparently the "std::" is missing in front of "isnan"; should this not be implicit?
> No. Many people in the C++ community frowns upon even doing "using namespace std" at all, never mind implicitly.
> http://stackoverflow.com/questions/1265039/using-std-namespace
> If you include math.h , isnan is called ::isnan .
> If you include cmath , isnan is called std::isnan .

Thanks for the info!

> Also, std::isnan was added with C++11, so it's a new feature. Are you compiling with a C++11 compiler? What are the compiler flags used?

I am just looking at the reports on hydra. Dealii compiles in master, but not
in core-updates. (I am trying to update to 8.4.1; so far, the build process
goes beyond where it fails in the current version.)

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Isnan
  2016-07-31 11:06   ` Isnan Andreas Enge
@ 2016-07-31 14:42     ` Andreas Enge
  2016-07-31 14:53       ` Isnan Andreas Enge
  0 siblings, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2016-07-31 14:42 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

On Sun, Jul 31, 2016 at 01:06:07PM +0200, Andreas Enge wrote:
> I am just looking at the reports on hydra. Dealii compiles in master, but not
> in core-updates. (I am trying to update to 8.4.1; so far, the build process
> goes beyond where it fails in the current version.)

It finished successfully. The next package with the same problem is synfig,
or probably rather etl that it depends on:
   http://hydra.gnu.org:3000/build/1345394

time.cpp: In member function ‘bool synfig::Time::is_valid() const’:
time.cpp:322:10: error: ‘::isnan’ has not been declared
  return !::isnan(value_);
          ^
time.cpp:322:10: note: suggested alternative:
In file included from /gnu/store/q5x10dkfsacby2i7yn6d18sdjbfvs5hj-etl-0.04.19/include/ETL/_misc.h:29:0,
                 from /gnu/store/q5x10dkfsacby2i7yn6d18sdjbfvs5hj-etl-0.04.19/include/ETL/misc:32,
                 from time.cpp:37:
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/include/c++/cmath:632:5: note:   ‘std::isnan’
     isnan(_Tp __x)
     ^

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Isnan
  2016-07-31 14:42     ` Isnan Andreas Enge
@ 2016-07-31 14:53       ` Andreas Enge
  2016-07-31 16:18         ` Isnan Andreas Enge
  0 siblings, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2016-07-31 14:53 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

On Sun, Jul 31, 2016 at 04:42:35PM +0200, Andreas Enge wrote:
> It finished successfully. The next package with the same problem is synfig,

And rapicorn:
   http://hydra.gnu.org:3000/build/1345676/nixlog/1/tail-reload

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Isnan
  2016-07-31 14:53       ` Isnan Andreas Enge
@ 2016-07-31 16:18         ` Andreas Enge
  0 siblings, 0 replies; 6+ messages in thread
From: Andreas Enge @ 2016-07-31 16:18 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

On Sun, Jul 31, 2016 at 04:53:49PM +0200, Andreas Enge wrote:
> And rapicorn:
>    http://hydra.gnu.org:3000/build/1345676/nixlog/1/tail-reload

Fixed in commit 42bf34298eec19b37e276e49074113f29c494aed.

Andreas

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-07-31 16:18 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-31 10:35 Isnan Andreas Enge
2016-07-31 10:44 ` Isnan Danny Milosavljevic
2016-07-31 11:06   ` Isnan Andreas Enge
2016-07-31 14:42     ` Isnan Andreas Enge
2016-07-31 14:53       ` Isnan Andreas Enge
2016-07-31 16:18         ` Isnan Andreas Enge

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).