[Rcpp-devel] Formatting Fixed - Clang 3.0 and 3.3 errors on sugar/set.h
Dirk Eddelbuettel
edd at debian.org
Mon Nov 19 20:02:08 CET 2012
On 19 November 2012 at 18:40, Chris Jefferson wrote:
| On 19/11/12 17:33, Thell Fowler wrote:
| >
| > /home/thell/R/library/Rcpp/include/Rcpp/sugar/sets.h:28:2: error:
| > invalid preprocessing directive
| > #elseif defined(HAS_TR1_UNORDERED_SET)
|
| Without looking any deeper at this (sorry), clang doesn't not accept
| elseif, it requires elif.
|
| gcc actually doesn't do what you expect with elseif. It just ignores it
| if the #if isn't added, and causes a compile-time error if you end up
| actually reaching that line. So in:
|
| #if defined(X)
|
| #elseif defined(Y)
|
| #endif
|
| If X is not defined, nothing is included even if Y is defined. If X is
| defined, a compile-time error always occurs.
|
| in you want someone with gcc, clang and c++0x experience have a dig
| through these headers, I am happy to download them and have a look.
Very nice catch! I shall test and fix this.
Your absent-minded typist, Dirk
--
Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com
More information about the Rcpp-devel
mailing list