#1655 nullptr.hh does not compile with g++ 4.8.2
Metadata
Property | Value |
---|---|
Reported by | Tobias Ritschel (tobiasritschel@gmail.com) |
Reported at | May 20, 2015 16:45 |
Type | Bug Report |
Version | 2.3 |
Operating System | Linux 64bit |
Last edited by | Dominic Kempf (dominic.r.kempf@gmail.com) |
Last edited at | May 21, 2015 10:48 |
Closed by | Dominic Kempf (dominic.r.kempf@gmail.com) |
Closed at | May 21, 2015 10:48 |
Closed in version | Unknown |
Resolution | Not a bug |
Comment |
Description
Hi
I am using Dune through OPM (http://www.opm-project.org). I would like to use ISTL to solve linear systems using Eigen matrices. To do this I use DuneMatrix.hpp from OPM. Eventually it includes nullptr.hh.
I compile using g++ 4.8.2 with -std=c++11
. I cannot find the version of Dune that I am using, but I installed it using sudo on Apr 13 2015 on Ubuntu 14.04LTS. I get the following error message
/home/tobias/Documents/petsc/arch-linux2-c-debug/bin/mpicxx -o src/OPMSim.o -c -Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -g -O0 -fPIC -std=c++11 -Wall -g -DNDEBUG -O1 -I/home/tobias/Documents/petsc/include -I/home/tobias/Documents/petsc/arch-linux2-c-debug/include `pwd`/src/OPMSim.cpp
In file included from /usr/include/dune/common/shared_ptr.hh:17:0,
from /usr/include/dune/istl/bcrsmatrix.hh:19,
from /usr/local/include/opm/autodiff/DuneMatrix.hpp:38,
from /home/tobias/Documents/OPM_Optimization/src/../header/OPMSim.hpp:22,
from /home/tobias/Documents/OPM_Optimization/src/OPMSim.cpp:1:
/usr/include/dune/common/nullptr.hh:29:1: error: expected ‘;’ after class definition
} nullptr = {}; // and whose name is nullptr
^
/usr/include/dune/common/nullptr.hh:29:1: error: qualifiers can only be specified for objects and functions
/usr/include/dune/common/nullptr.hh:29:3: error: expected unqualified-id before ‘nullptr’
} nullptr = {}; // and whose name is nullptr
^
make: *** [src/OPMSim.o] Error 1
I can see that this part of the code is not called if HAVE_NULLPTR
is set to true. As far as I know gcc 4.6 and higher has nullptr
and so I don't believe it should be a problem.
I could only find one other bug report concerning this file, but the problem seems to be another. Do I need to make sure to include other Dune header files or could I just set
#define HAVE_NULLPTR 1
Any help would be much appreciated.
Kind regards Tobias