On 7/10/12 9:30 PM, Dirk Eddelbuettel wrote:

On 10 July 2012 at 21:01, Jiqiang Guo wrote:
| Dear List:
|
| I case across an error on Windows 7 64bits,  any idea how can I avoid that?
| I wish I could provide a demonstrative example, but it's too complicated now.
|
| This is the error report:



Here I can only surmise that you used 'long long' which is not permitted on
CRAN as its mandated compilers versions do not (yet) support C++11. Which is
why Rcpp (as shipped from CRAN) cannot support it.

Thanks, Dirk.  We use long long.  I didn't realize
it was C++11 because it apparently snuck into C99,
so neither clang++ nor g++ give C++11 warnings for long
long.  We excised all the C++11 we knew about because
we knew CRAN didn't like it.

Ironically, the long long types went in to fix earlier
build problems on Windows 64-bit.

We can probably ifdef a little and get int64_t and
unsigned int64_t into the Windows code.

C++ sure is ugly to make portable.

> It really helps when you show __code__ producing the error in question.

I couldn't agree more.  Mozilla has a nice set of
guidelines:

  https://developer.mozilla.org/en/Bug_writing_guidelines

So thanks again for the mindreading debugging.  Our
code size is huge due to Eigen and Boost includes, so
it's non-trivial to create a reproducible example,
especially when you have no idea that there's anything
special about long long.

- Bob

_______________________________________________
Rcpp-devel mailing list
[email protected]
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

Reply via email to