[ET Trac] [Einstein Toolkit] #1877: TimerReport change requires C++11, but Cactus does not
Einstein Toolkit
trac-noreply at einsteintoolkit.org
Tue Apr 26 05:38:58 CDT 2016
#1877: TimerReport change requires C++11, but Cactus does not
--------------------+-------------------------------------------------------
Reporter: hinder | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: Cactus | Version: development version
Keywords: |
--------------------+-------------------------------------------------------
The commit
https://bitbucket.org/cactuscode/cactusutils/commits/5c812eb236f4ff033fc1c279cf9eadca9933bbda
uses C++11 features which are not enabled by Cactus autoconf. Erik warned
in the ET call yesterday that this might be a problem. The error you get
is
Checking status of thorn TimerReport
In file included from /usr/include/c++/4.8/array:35:0,
from
/home/jenkins/workspace/KrancTutorial/Cactus/arrangements/CactusUtils/TimerReport/src/Output.cc:16:
/usr/include/c++/4.8/bits/c++0x_warning.h:32:2: error: #error This file
requires compiler and library support for the ISO C++ 2011 standard. This
support is currently experimental, and must be enabled with the -std=c++11
or -std=gnu++11 compiler options.
#error This file requires compiler and library support for the
This is when compiling without an optionlist on Ubuntu 14.04.
* If we want to require C++11 for Cactus, then we should configure for
it (i.e. add the -std=gnu++11 option when configuring, as is done in
several simfactory optionlists).
* My feeling is that C++11 compiler support might not be diffuse enough
or mature enough to require for Cactus, which prides itself on
portability, but I'm not up-to-date on the current C++ landscape. The
above error message, on a version of Ubuntu which has been LTS up to a
week ago, suggests that the GCC authors were also not sufficiently
confident in the implementation. The [[https://gcc.gnu.org/projects/cxx-
status.html#cxx11|GCC C++11 page]] doesn't seem to list recent GCC
versions, but the latest version listed (4.8) still describes the support
as "experimental".
* Maybe the C++11 features being used in TimerReport are not critical,
and can be easily worked around?
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1877>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
More information about the Trac
mailing list