Bug 17189 - R-devel does not set CXX1X, CXX1XSTD on compilers without full C++11 support
Summary: R-devel does not set CXX1X, CXX1XSTD on compilers without full C++11 support
Status: UNCONFIRMED
Alias: None
Product: R
Classification: Unclassified
Component: Installation (show other bugs)
Version: R-devel (trunk)
Hardware: Other Linux-Ubuntu
: P5 normal
Assignee: R-core
URL:
Depends on:
Blocks:
 
Reported: 2016-12-01 13:04 UTC by Jim Hester
Modified: 2016-12-01 13:04 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jim Hester 2016-12-01 13:04:55 UTC
R-devel does not set CXX1X, CXX1XSTD on compilers without full C++11 support. This is a departure from the current behavior of R 3.3.2, which does set these variables if the compiler has at least some support for C++11.

A reproducible example of the behavior can be found at https://github.com/jimhester/rocker/tree/master/r-devel/precise#readme along with instructions on reproducing. The repository directory can be checked out using git, or svn with
 `svn co https://github.com/jimhester/rocker/trunk/r-devel/precise`.

A example case is ubuntu precise, which uses g++ 4.6.3. This compiler version does not have full support for C++11, but does have partial support. In previous R versions CXX1X and CXX1XSTD were set to `g++` and `-std=c++0x` respectively. With the current R-devel they are unset.

If a R package uses only supported C++11 features they can be successfully compiled with g++ 4.6.3 using R 3.3.2, but will fail to compile with R-devel.

Ideally we would like to retain the flags for partial support, while still setting e.g. `-std=c++11` if the compiler has full support for C++11.