Bug#823313: r-base-dev: causes r-cran-tgp to FTBFS: error: template with C linkage

2016-05-03 Thread Dirk Eddelbuettel

On 3 May 2016 at 13:07, Andreas Beckmann wrote:
| Package: r-base-dev
| Version: 3.2.5.20160429-1
| Severity: serious
| Control: block 820866 with -1
| 
| Hi,
| 
| current r-base-dev in sid causes r-cran-tgp to FTBFS (#820866),
| downgrading to 3.2.5-1 makes it build again.
| 
| from the log of an amd64 build:
| 
| g++ -I/usr/share/R/include -DNDEBUG -DRPRINT -DNDEBUG  -fpic  -g -O2 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -g  -c base.cc -o base.o
| In file included from /usr/share/R/include/R.h:40:0,
|  from rhelp.h:20,
|  from base.h:30,
|  from base.cc:25:
| /usr/include/c++/5/cstdlib: In function 'long long int std::abs(long long 
int)':
| /usr/include/c++/5/cstdlib:174:20: error: conflicting declaration of C 
function 'long long int std::abs(long long int)'
|abs(long long __x) { return __builtin_llabs (__x); }
| ^
| /usr/include/c++/5/cstdlib:166:3: note: previous declaration 'long int 
std::abs(long int)'
|abs(long __i) { return __builtin_labs(__i); }
|^
| /usr/include/c++/5/cstdlib: In function '__int128 std::abs(__int128)':
| /usr/include/c++/5/cstdlib:179:33: error: conflicting declaration of C 
function '__int128 std::abs(__int128)'
|abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; }
|  ^
| /usr/include/c++/5/cstdlib:174:3: note: previous declaration 'long long int 
std::abs(long long int)'
|abs(long long __x) { return __builtin_llabs (__x); }
|^
| /usr/include/c++/5/cstdlib:179:33: error: conflicting declaration of C 
function '__int128 std::abs(__int128)'
|abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; }
|  ^
| /usr/include/c++/5/cstdlib:166:3: note: previous declaration 'long int 
std::abs(long int)'
|abs(long __i) { return __builtin_labs(__i); }
|^
| In file included from /usr/include/c++/5/cmath:42:0,
|  from /usr/share/R/include/R.h:43,
|  from rhelp.h:20,
|  from base.h:30,
|  from base.cc:25:
| /usr/include/c++/5/bits/cpp_type_traits.h: At global scope:
| /usr/include/c++/5/bits/cpp_type_traits.h:72:3: error: template with C linkage
|template
|^
| /usr/include/c++/5/bits/cpp_type_traits.h:85:3: error: template with C linkage
|template
|^
| /usr/include/c++/5/bits/cpp_type_traits.h:89:3: error: template 
specialization with C linkage
|template<>
|^
| /usr/include/c++/5/bits/cpp_type_traits.h:95:3: error: template with C linkage
|template
|^
| /usr/include/c++/5/bits/cpp_type_traits.h:103:3: error: template with C 
linkage
|template
|^
| 

Based on a few R packages of mine, I also suspect that this can be fixed
somewhat 'simply' by declaring the C++11 compilation standard. I'll try to
test that hypothesis later today.

Dirk
 
| Andreas

-- 
http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org



Bug#823313: r-base-dev: causes r-cran-tgp to FTBFS: error: template with C linkage

2016-05-03 Thread Andreas Beckmann
Package: r-base-dev
Version: 3.2.5.20160429-1
Severity: serious
Control: block 820866 with -1

Hi,

current r-base-dev in sid causes r-cran-tgp to FTBFS (#820866),
downgrading to 3.2.5-1 makes it build again.

from the log of an amd64 build:

g++ -I/usr/share/R/include -DNDEBUG -DRPRINT -DNDEBUG  -fpic  -g -O2 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -g  -c base.cc -o base.o
In file included from /usr/share/R/include/R.h:40:0,
 from rhelp.h:20,
 from base.h:30,
 from base.cc:25:
/usr/include/c++/5/cstdlib: In function 'long long int std::abs(long long int)':
/usr/include/c++/5/cstdlib:174:20: error: conflicting declaration of C function 
'long long int std::abs(long long int)'
   abs(long long __x) { return __builtin_llabs (__x); }
^
/usr/include/c++/5/cstdlib:166:3: note: previous declaration 'long int 
std::abs(long int)'
   abs(long __i) { return __builtin_labs(__i); }
   ^
/usr/include/c++/5/cstdlib: In function '__int128 std::abs(__int128)':
/usr/include/c++/5/cstdlib:179:33: error: conflicting declaration of C function 
'__int128 std::abs(__int128)'
   abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; }
 ^
/usr/include/c++/5/cstdlib:174:3: note: previous declaration 'long long int 
std::abs(long long int)'
   abs(long long __x) { return __builtin_llabs (__x); }
   ^
/usr/include/c++/5/cstdlib:179:33: error: conflicting declaration of C function 
'__int128 std::abs(__int128)'
   abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; }
 ^
/usr/include/c++/5/cstdlib:166:3: note: previous declaration 'long int 
std::abs(long int)'
   abs(long __i) { return __builtin_labs(__i); }
   ^
In file included from /usr/include/c++/5/cmath:42:0,
 from /usr/share/R/include/R.h:43,
 from rhelp.h:20,
 from base.h:30,
 from base.cc:25:
/usr/include/c++/5/bits/cpp_type_traits.h: At global scope:
/usr/include/c++/5/bits/cpp_type_traits.h:72:3: error: template with C linkage
   template
   ^
/usr/include/c++/5/bits/cpp_type_traits.h:85:3: error: template with C linkage
   template
   ^
/usr/include/c++/5/bits/cpp_type_traits.h:89:3: error: template specialization 
with C linkage
   template<>
   ^
/usr/include/c++/5/bits/cpp_type_traits.h:95:3: error: template with C linkage
   template
   ^
/usr/include/c++/5/bits/cpp_type_traits.h:103:3: error: template with C linkage
   template
   ^


Andreas