abi-compliance-checker
abi-compliance-checker copied to clipboard
Unsure about "Headers have been compiled with minor errors." (exit code 6)
Hi!
I get exit code 6 ("Headers have been compiled with minor errors.") without having any idea why, got code 0 with slightly different code until recently (with slightly different input). The full log is at https://travis-ci.org/cpptest/cpptest/builds/475375563 , it's the version of abi-compliance-checker
from Ubuntu xenial
. It would be great to understand what's really going on, how safe or unsafe it is to ignore that error as a flavor of compatibility, what I can do to fix it etc. Are there any more docs about it that I failed to find?
Thanks and best, Sebastian
The tool dumps header compilation errors to the logs
sub-directory of the current execution directory.
To avoid compilation of header files please use a new approach with the help of the https://github.com/lvc/abi-tracker tool.
I've just added cpptest
to the upstream tracker for automated analysis by latest upstream versions of tools: https://abi-laboratory.pro/?view=timeline&l=cpptest
The tool dumps header compilation errors to the
logs
sub-directory of the current execution directory.
I see!
That point led me to this error (full log at https://travis-ci.org/cpptest/cpptest/builds/481159334):
The GCC parameters:
gcc -fdump-translation-unit -fkeep-inline-functions -c -x c++-header -fpermissive -w "/tmp/Dj6xt2Id2Y/dump1.h" -I/home/travis/build/cpptest/cpptest/cpptest-1.1.2-19-gd12a088-git/cpptest/win -I/home/travis/build/cpptest/cpptest/cpptest-1.1.2-19-gd12a088-git/cpptest/config
In file included from /home/travis/build/cpptest/cpptest/cpptest-1.1.2-19-gd12a088-git/cpptest/src/cpptest.h:34:0,
from /tmp/Dj6xt2Id2Y/dump1.h:7:
/home/travis/build/cpptest/cpptest/cpptest-1.1.2-19-gd12a088-git/cpptest/src/cpptest-suite.h:58:17: error: ‘std::unique_ptr’ has not been declared
void add(std::unique_ptr<Suite> suite);
^
/home/travis/build/cpptest/cpptest/cpptest-1.1.2-19-gd12a088-git/cpptest/src/cpptest-suite.h:58:27: error: expected ‘,’ or ‘...’ before ‘<’ token
void add(std::unique_ptr<Suite> suite);
^
There is #include <memory>
in cpptest-suite.h
, already. Any ideas how to avoid that error? Do I need to pass -std=c++11
some way or so?
To avoid compilation of header files please use a new approach with the help of the https://github.com/lvc/abi-tracker tool.
From a quick look, that looks like hours to get it all running. Is there a sample Travis integration somewhere to speed things up?
I've just added
cpptest
to the upstream tracker for automated analysis by latest upstream versions of tools: https://abi-laboratory.pro/?view=timeline&l=cpptest
Nice! Also noticed you have Expat and uriparser in there, cool!
PS: I notice gcc
rather than g++
in that command line only now. Is that part of the problem?