[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