CppPotpourri - compatibility matrix

This report was generated on Wednesday, 23-Feb-22 22:48:15 CET using arduino-testlib.

CppPotpourri

Version: 2.15.3
More details

Compatibility matrix

Board Claims compatibility Inclusion
arduino:avr:uno
1.8.4
Yes ⚠️ FAIL
arduino:mbed_nano:nanorp2040connect
2.7.2
Yes ⚠️ FAIL
arduino:megaavr:nona4809
1.8.7
Yes ⚠️ FAIL
arduino:samd:mkrwifi1010
1.8.12
Yes ⚠️ FAIL
esp32:esp32:d1_mini32
1.0.6
Yes PASS

Compilation logs

arduino:avr:uno @ 1.8.4

Inclusion

Result: FAIL

In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/BusQueue.h:32:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/AbstractPlatform.h:7,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/I2CDevice.cpp:22:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/SringBuilder.h:117:17: error: 'uint' has not been declared
     void concat(uint nu);
                 ^~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:10: error: 'void StringBuilder::concat(int)' cannot be overloaded
     void concat(uint nu);
          ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:116:10: error: with 'void StringBuilder::concat(int)'
     void concat(int nu);
          ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:152:28: error: 'uint' has not been declared
     bool     drop_position(uint pos);   // And use this to reap the tokens that you've used.
                            ^~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:164:66: error: 'uint' has not been declared
     static void printBuffer(StringBuilder* output, uint8_t* buf, uint len, const char* indent = "\t");
                                                                  ^~~~
~
pourri.cpp:57:27: error: 'alloca' was not declared in this scope
   char* tmp_buf = (char*) alloca(20);
                           ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/CppPotpourri.cpp:57:27: note: suggested alternative: 'malloc'
   char* tmp_buf = (char*) alloca(20);
         /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:10: error: 'void StringBuil/U/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:10: error: 'void StringBuilder::concat(int)' cannot be overloaded
     void concat(uint nu);
          ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:116:10: error: with 'void StringBuilder::concat(int)'
     void concat(int nu/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:10: error: 'void StringBuilder::concat(int)' cannot be overloaded
     void concat(uint nu);
          ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:116:10: error: with 'void StringBuilder::concat(int)'
     void concat(int nu);
          ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:152:28: error: 'uint' has not been declared
     bool     drop_position(uint pos);   // And use this to reap the tokens that you've used.
                            ^~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:164:66: error: 'uint' has not been declared
     static void printBuffer(StringBuilder* output, uint8_t* buf, uint len, const char* indent = "\t");
                                                                  ^~~~
     ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ParsingConsole.cpp:432:28: note: suggested alternative: 'malloc'
     char* sc_str = (char*) alloca(4);
                            ^~~~~~
                            malloc
er/libraries/CppPotpourri/src/GPSWrapper.h:308:25: note: forward declaration of 'struct timespec'
     int _gettime(struct timespec*, const struct minmea_date*, const struct minmea_time*);
                         ^~~~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/GPSWrapper.cpp:874:11: error: invalid use of incomplete type 'struct timespec'
       ts->tv_nsec = tval->microseconds * 1000;
           ^~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/GPSWrapper.cpp:22:0:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/GPSWrapper.h:308:25: note: forward declaration of 'struct timespec'
     int _gettime(struct timespec*, const struct minmea_date*, const struct minmea_time*);
                         ^~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/BusQueue.h:32:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/AbstractPlatform.h:7,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/SPIBusOp.cpp:23:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:17: error: 'uint' has not been declared
     void concat(uint nu);
                 ^~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:10: error: 'void StringBuilder::concat(int)' cannot be overloaded
     void concat(uint nu);
          ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:116:10: error: with 'void StringBuilder::concat(int)'
     void concat(int nu);
          ^~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:152:28: error: 'uint' has not been declared
     bool     drop_position(uint pos);   // And use this to reap the tokens that you've used.
                            ^~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:164:66: error: 'uint' has not been declared
     static void printBuffer(StringBuilder* output, uint8_t* buf, uint len, const char* indent = "\t");
                                                                  ^~~~

arduino:mbed_nano:nanorp2040connect @ 2.7.2

Inclusion

Result: FAIL

In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:67:20: error: reference to RingBuffer' is ambiguous
 template <class T> RingBuffer<T>::RingBuffer(const unsigned int c) : _CAPAC(c), _E_SIZE(sizeof(T)) {
                    ^~~~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:33:26: note: candidates are: template<class T> class RingBuffer
 template <class T> class RingBuffer {
                          ^~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Serial.h:23:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Arduino.h:102,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../StringBuilder.h:32,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:61,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/api/RingBuffer.h:59:41: note:                 typedef class arduino::RingBufferN<64> arduino::RingBuffer
 typedef RingBufferN<SERIAL_BUFFER_SIZE> RingBuffer;
                                         ^~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:79:20: error: reference to 'RingBuffer' is ambiguous
 template <class T> RingBuffer<T>::~RingBuffer() {
                    ^~~~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:33:26: note: candidates are: template<class T> class RingBuffer
 template <class T> class RingBuffer {
                          ^~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Serial.h:23:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Arduino.h:102,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../StringBuilder.h:32,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:61,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/api/RingBuffer.h:59:41: note:                 typedef class arduino::RingBufferN<64> arduino::RingBuffer
 typedef RingBufferN<SERIAL_BUFFER_SIZE> RingBuffer;
                                         ^~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:89:35: error: expected initializer before '<' token
 template <class T> void RingBuffer<T>::clear() {
                                   ^
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:109:34: error: expected initializer before '<' token
 template <class T> int RingBuffer<T>::insert(T d) {
                                  ^
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:131:35: error: expected initializer before '<' token
 template <class T> bool RingBuffer<T>::contains(T d) {
                                   ^
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:155:32: error: expected initializer before '<' token
 template <class T> T RingBuffer<T>::get() {
                                ^
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:171:32: error: expected initializer before '<' token
 template <class T> T RingBuffer<T>::get(unsigned int idx) {
                                ^
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:34:47: error: reference to 'RingBuffer' is ambiguous
 template <class T> class ElementPool : public RingBuffer<T*>  {
                                               ^~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:33:26: note: candidates are: template<class T> class RingBuffer
 template <class T> class RingBuffer {
                          ^~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Serial.h:23:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/Arduino.h:102,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../StringBuilder.h:32,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:61,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/data/packages/arduino/hardware/mbed_nano/2.7.2/cores/arduino/api/RingBuffer.h:59:41: note:                 typedef class arduino::RingBufferN<64> arduino::RingBuffer
 typedef RingBufferN<SERIAL_BUFFER_SIZE> RingBuffer;
                                         ^~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:34:57: error: expected template-name before '<' token
 template <class T> class ElementPool : public RingBuffer<T*>  {
                                                         ^
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:34:57: error: expected '{' before '<' token
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:67:83: error: invalid use of incomplete type 'class ElementPool<T>'
 template <class T> ElementPool<T>::ElementPool(const unsigned int c, const T* _mem) : RingBuffer<T*>(c), _pool(_mem) {
                                                                                   ^
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:34:26: note: declaration of 'class ElementPool<T>'
 template <class T> class ElementPool : public RingBuffer<T*>  {
                          ^~~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:95:49: error: invalid use of incomplete type 'class ElementPool<T>'
 template <class T> int ElementPool<T>::give(T* e) {
                                                 ^
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /home/ec2-user/arduino-testlib/cli-datadi

arduino:megaavr:nona4809 @ 1.8.7

Inclusion

Result: FAIL

In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/CppPotpourri.cpp:22:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:17: error: 'uint' has not been declared
     void concat(uint nu);
              /home//ho/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:117:10: error: 'void StringBuilder::concat(int)' cannot be overloaded
     void concat(uint nu);
          ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:116:10: error: with 'void StringBuilder::concat(int)'
     void concat(int nu);
          ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:152:28: error: 'uint' has not been declared
     bool     drop_position(uint pos);   // And use this to reap the tokens that you've used.
                            ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:164:66: error: 'uint' has not been declared
     static void printBuffer(StringBuilder* output, uint8_t* buf, uint len, const char* indent = "\t");
                                                                  ^~~~
ilder.h:164:66: error: 'uint' has not been declared
     static void printBuffer(StringBuilder* output, uint8_t* buf, uint len, const char* indent = "\t");
                                                                  ^~~~
xisCompass.h:6:0,
                 from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/TripleAxisCompass.cpp:2:
/home/ec2-user/In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:21:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:164:17: error: candidate is: static void StringBuilder::printBuffer(StringBuilder*, uint8_t*, int, const char*)
     static void printBuffer(StringBuilder* output, uint8_t* buf, uint len, const char* indent = "\t");
                 ^~~~~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:267:16: error: prototype for 'short unsigned int StringBuilder::count()' does not match any in class 'StringBuilder'
 unsigned short StringBuilder::count() {
                ^~~~~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:21:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:146:14: error: candidate is: uint16_t StringBuilder::count()
     uint16_t count();                   // Count the tokens.
              ^~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:445:6: error: prototype for 'bool StringBuilder::drop_position(unsigned int)' does not match any in class 'StringBuilder'
 bool StringBuilder::drop_position(unsigned int pos) {
      ^~~~~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:21:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:152:14: error: candidate is: bool StringBuilder::drop_position(int)
     bool     drop_position(uint pos);   // And use this to reap the tokens that you've used.
              ^~~~~~~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp: In member function 'void StringBuilder::concat(unsigned char)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:679:36: error: 'alloca' was not declared in this scope
   unsigned char* temp = (uint8_t*) alloca(1);
                                    ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:679:36: note: suggested alternative: 'malloc'
   unsigned char* temp = (uint8_t*) alloca(1);
                                    ^~~~~~
                                    malloc
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp: In member function 'void StringBuilder::concat(char)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:684:25: error: 'alloca' was not declared in this scope
   char* temp = (char *) alloca(2);
                         ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:684:25: note: suggested alternative: 'malloc'
   char* temp = (char *) alloca(2);
                         ^~~~~~
                         malloc
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp: In member function 'void StringBuilder::concat(int)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:690:26: error: 'alloca' was not declared in this scope
   char * temp = (char *) alloca(12);
                          ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:690:26: note: suggested alternative: 'malloc'
   char * temp = (char *) alloca(12);
                          ^~~~~~
                          malloc
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp: At global scope:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:695:6: error: prototype for 'void StringBuilder::concat(unsigned int)' does not match any in class 'StringBuilder'
 void StringBuilder::concat(unsigned int nu) {
      ^~~~~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:21:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:124:10: error: candidates are: void StringBuilder::concat(arduino::String)
     void concat(String);
          ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:121:17: error:                 void StringBuilder::concat(bool)
     inline void concat(bool nu) {   concat(nu ? "T" : "F"); };
                 ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:120:17: error:                 void StringBuilder::concat(float)
     inline void concat(float nu) {  concat((double) nu);    };  // Floats are upgraded to doubles.
                 ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:118:10: error:                 void StringBuilder::concat(double)
     void concat(double nu);
          ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:689:6: error:                 void StringBuilder::concat(int)
 void StringBuilder::concat(int nu) {
      ^~~~~~~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:678:6: error:                 void StringBuilder::concat(unsigned char)
 void StringBuilder::concat(unsigned char nu) {
      ^~~~~~~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:683:6: error:                 void StringBuilder::concat(char)
 void StringBuilder::concat(char nu) {
      ^~~~~~~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:621:6: error:                 void StringBuilder::concat(uint8_t*, int)
 void StringBuilder::concat(uint8_t* nu, int len) {
      ^~~~~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:21:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:112:10: error:                 void StringBuilder::concat(StringBuilder*)
     void concat(StringBuilder *nu);
          ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:653:6: error:                 void StringBuilder::concat(const char*)
 void StringBuilder::concat(const char *nu) {
      ^~~~~~~~~~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:21:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.h:103:17: error:                 void StringBuilder::concat(char*)
     inline void concat(char* nu) {  concat((uint8_t*) nu, strlen(nu));  };
                 ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp: In member function 'void StringBuilder::concat(double)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:702:26: error: 'alloca' was not declared in this scope
   char * temp = (char *) alloca(16);
                          ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:702:26: note: suggested alternative: 'malloc'
   char * temp = (char *) alloca(16);
                          ^~~~~~
                          malloc
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp: In member function 'int StringBuilder::concatf(const char*, ...)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:732:25: error: 'alloca' was not declared in this scope
   char *temp = (char *) alloca(est_len);
                         ^~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp:732:25: note: suggested alternative: 'malloc'
   char *temp = (char *) alloca(est_len);
                         ^~~~~~
                         malloc
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/StringBuilder.cpp: In member function 'void StringBuilder::concat(arduino::Stri

arduino:samd:mkrwifi1010 @ 1.8.12

Inclusion

Result: FAIL

In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsg.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadirdir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:67:20: error: reference to 'RingBuffer' is ambiguous
 template <class T> RingBuffer<T>::RingBuffer(const unsigned int c) : _CAPAC(c), _E_SIZE(sizeof(T)) {
                    ^~~~~~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:33:26: note: candidates are: template<class T> class RingBuffer
 template <class T> class RingBuffer {
                          ^~~~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/SafeRingBuffer.h:24:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Uart.h:23,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/variants/mkrwifi1010/variant.h:165,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Arduino.h:51,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../StringBuilder.h:32,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:61,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/RingBuffer.h:59:41: note:                 typedef class arduino::RingBufferN<64> arduino::RingBuffer
 typedef RingBufferN<SERIAL_BUFFER_SIZE> RingBuffer;
                                         ^~~~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:79:20: error: reference to 'RingBuffer' is ambiguous
 template <class T> RingBuffer<T>::~RingBuffer() {
                    ^~~~~~~~~~
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:33:26: note: candidates are: template<class T> class RingBuffer
 template <class T> class RingBuffer {
                          ^~~~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/SafeRingBuffer.h:24:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Uart.h:23,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/variants/mkrwifi1010/variant.h:165,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Arduino.h:51,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../StringBuilder.h:32,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:61,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/RingBuffer.h:59:41: note:                 typedef class arduino::RingBufferN<64> arduino::RingBuffer
 typedef RingBufferN<SERIAL_BUFFER_SIZE> RingBuffer;
                                         ^~~~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:89:35: error: expected initializer before '<' token
 template <class T> void RingBuffer<T>::clear() {
                                   ^
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:109:34: error: expected initializer before '<' token
 template <class T> int RingBuffer<T>::insert(T d) {
                                  ^
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:131:35: error: expected initializer before '<' token
 template <class T> bool RingBuffer<T>::contains(T d) {
                                   ^
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:155:32: error: expected initializer before '<' token
 template <class T> T RingBuffer<T>::get() {
                                ^
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:171:32: error: expected initializer before '<' token
 template <class T> T RingBuffer<T>::get(unsigned int idx) {
                                ^
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:34:47: error: reference to 'RingBuffer' is ambiguous
 template <class T> class ElementPool : public RingBuffer<T*>  {
                                               ^~~~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:26:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../RingBuffer.h:33:26: note: candidates are: template<class T> class RingBuffer
 template <class T> class RingBuffer {
                          ^~~~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/SafeRingBuffer.h:24:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Uart.h:23,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/variants/mkrwifi1010/variant.h:165,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/Arduino.h:51,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../StringBuilder.h:32,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:61,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/data/packages/arduino/hardware/samd/1.8.12/cores/arduino/api/RingBuffer.h:59:41: note:                 typedef class arduino::RingBufferN<64> arduino::RingBuffer
 typedef RingBufferN<SERIAL_BUFFER_SIZE> RingBuffer;
                                         ^~~~~~~~~~
In file included from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrLink.h:67:0,
                 from /Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/ManuvrMsgHdr.cpp:21:
/Users/alranel/Documents/git/arduino/arduino-testlib/cli-datadir/user/libraries/CppPotpourri/src/ManuvrLink/../ElementPool.h:34:57: error: expected template-name before '<' token
 template <class T> class ElementPool : public RingBuffer<T*>  {
                                                         ^
/Users/alranel/Do

esp32:esp32:d1_mini32 @ 1.0.6

Inclusion

Result: PASS

Sketch uses 205782 bytes (15%) of program storage space. Maximum is 1310720 bytes.
Global variables use 13368 bytes (4%) of dynamic memory, leaving 314312 bytes for local variables. Maximum is 327680 bytes.