[Bioc-devel] R CMD check without WARNING: g++ and STL issue for xcms and mzR

Neumann, Steffen sneumann at ipb-halle.de
Sun Apr 2 12:52:33 CEST 2017


Hi,

in preparation for the release, we are hunting down WARNINGS
"Found ‘abort’, possibly from ‘abort’ (C)" in xcms/mzR.
The abort() call is not coming from XCMS, but rather 
from the C++ code in the STL, and we have no idea 
how to get rid of it.

We are tracking this in: https://github.com/sneumann/xcms/issues/150

In a nutshell, the standard tenplate library (STL) that comes 
with g++-5.4.0 has a snippet:

https://github.com/gcc-mirror/gcc/blob/1cb6c2eb3b8361d850be8e8270c59727
0a1a7967/libstdc%2B%2B-v3/include/bits/stl_list.h#L1825

...
# 1770 "/usr/include/c++/5/bits/stl_list.h"
void _M_check_equal_allocators(list& __x) {
 if (_M_get_Node_allocator())
   __builtin_abort();
}

You can also check this by looking at the compiler output 
after the preprocess step:

g++ -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-
protector-strong -Wformat -Werror=format-security -Wdate-time
-D_FORTIFY_SOURCE=2 -g  -c massifquant/TrMgr.cpp -E | less

The same applies to mzR, where the same stl_list.h is included
in two files (Found ‘abort’, possibly from ‘abort’ (C)
    Objects: ‘./boost/libs/regex/src/instances.o’,
      ‘./boost/libs/regex/src/winstances.o’)

=> Since we don't want to patch the STL, we have no idea 
   how to fix that WARNING. Is there a way to get an exception, 
   or patch/whitelist this call in R CMD check ?

Yours, 
Steffen Neumann

-- 
Current job opportunities @ IPB Halle:
For details, see: http://www.ipb-halle.de/en/career/job-vacancies/

* Department Head
* LIMS-Manager / Data manager

----------------------------------------------------------
IPB Halle                    AG Massenspektrometrie & Bioinformatik
Dr. Steffen Neumann          http://www.IPB-Halle.DE
Weinberg 3                   Tel. +49 (0) 345 5582 - 1470
06120 Halle                       +49 (0) 345 5582 - 0           
sneumann(at)IPB-Halle.DE     Fax. +49 (0) 345 5582 - 1409


More information about the Bioc-devel mailing list