Closed
Description
System
- OS: macOS 10.15.7
ruby -v
: ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19]bundle -v
: Bundler version 1.17.2bundle info arduino_ci
: arduino_ci (0.3.0)g++ -v
: Apple clang version 12.0.0 (clang-1200.0.32.2)- Arduino IDE version: 1.8.13
java -version
: java version "11.0.7" 2020-04-14 LTS- URL of failing Travis CI job: (none)
- URL of your Arduino project: https://github.com/jgfoster/arduino_ci
Conflicting definitions of ostream& operator<<()
The following both have definitions:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/ostream:223:20
/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/OstreamHelpers.h:5:22
Here is the output:
Unit testing library.cpp with g++...
Last command: $ g++ -std=c++0x -o /Users/jfoster/code/Arduino/arduino_ci/SampleProjects/TestSomething/unittest_library.cpp.bin -DARDUINO=100 -g -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fsanitize=address -D__AVR_ATmega328P__ -I/Users/jfoster/code/Arduino/arduino_ci/cpp/arduino -I/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest -I/Users/jfoster/code/Arduino/arduino_ci/SampleProjects/TestSomething/test -I/Users/jfoster/code/Arduino/arduino_ci/SampleProjects/TestSomething /Users/jfoster/code/Arduino/arduino_ci/cpp/arduino/Arduino.cpp /Users/jfoster/code/Arduino/arduino_ci/cpp/arduino/Godmode.cpp /Users/jfoster/code/Arduino/arduino_ci/cpp/arduino/stdlib.cpp /Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/ArduinoUnitTests.cpp /Users/jfoster/code/Arduino/arduino_ci/SampleProjects/TestSomething/test-something.cpp /Users/jfoster/code/Arduino/arduino_ci/SampleProjects/TestSomething/test/library.cpp
In file included from /Users/jfoster/code/Arduino/arduino_ci/SampleProjects/TestSomething/test/library.cpp:1:
/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/ArduinoUnitTests.h:90:54: error: use of overloaded operator '<<' is ambiguous (with operand types 'basic_ostream<char, std::__1::char_traits<char> >' and 'const nullptr_t')
cerr << " " << lhsRelevance << ": " << lhs << endl;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~
/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/ArduinoUnitTests.h:219:20: note: in instantiation of function template specialization 'Test::ReporterTAP::onAssert<nullptr_t, int *>' requested here
mReporter->onAssert(file, line, description, ok,
^
/Users/jfoster/code/Arduino/arduino_ci/SampleProjects/TestSomething/test/library.cpp:11:3: note: in instantiation of function template specialization 'Test::assertion<nullptr_t, int *>' requested here
assertEqual(nullptr, aNullPointer());
^
/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/Assertion.h:33:38: note: expanded from macro 'assertEqual'
#define assertEqual(arg1,arg2) assertOp("assertEqual","expected",arg1,compareEqual,"==","actual",arg2)
^
/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/Assertion.h:26:3: note: expanded from macro 'assertOp'
testBehaviorOp(false, desc, rel1, arg1, op, op_name, rel2, arg2)
^
/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/Assertion.h:12:10: note: expanded from macro 'testBehaviorOp'
if (!assertion<typeof(arg1), typeof(arg2)>(__FILE__, __LINE__, \
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/ostream:223:20: note: candidate function
basic_ostream& operator<<(nullptr_t)
^
/Users/jfoster/code/Arduino/arduino_ci/cpp/unittest/OstreamHelpers.h:5:22: note: candidate function
inline std::ostream& operator << (std::ostream& out, const std::nullptr_t &np) { return out << "nullptr"; }
^
1 error generated.
...Unit testing library.cpp with g++ ✗
Metadata
Metadata
Assignees
Labels
No labels