mString - compatibility matrix

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

mString

Version: 1.0
More details

Compatibility matrix

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

Compilation logs

arduino:avr:uno @ 1.8.4

Inclusion

Result: PASS

Sketch uses 444 bytes (1%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.

examples/demo

Result: PASS

Sketch uses 7612 bytes (23%) of program storage space. Maximum is 32256 bytes.
Global variables use 362 bytes (17%) of dynamic memory, leaving 1686 bytes for local variables. Maximum is 2048 bytes.

arduino:mbed_nano:nanorp2040connect @ 2.7.2

Inclusion

Result: FAIL

In file included from /tmp/arduino-testlib1193902540/test/test.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In function 'char* mFtoa(double, int8_t, char*)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:51:14: error: 'ltoa' was not declared in this scope
     buffer = ltoa(mant, buffer, DEC);
              ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:51:14: note: suggested alternative: 'utoa'
     buffer = ltoa(mant, buffer, DEC);
              ^~~~
              utoa
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'mString<SIZE>& mString<SIZE>::add(int32_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:101:9: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         ltoa(value, vBuf, DEC);
         ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:101:9: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'bool mString<SIZE>::operator==(int32_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:265:29: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         return !strcmp(buf, ltoa(value, valBuf, DEC));
                             ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'bool mString<SIZE>::operator==(int16_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:269:29: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         return !strcmp(buf, ltoa(value, valBuf, DEC));
                             ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'bool mString<SIZE>::operator==(int8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:273:29: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         return !strcmp(buf, ltoa(value, valBuf, DEC));
                             ^~~~

examples/demo

Result: FAIL

In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In function 'char* mFtoa(double, int8_t, char*)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:51:14: error: 'ltoa' was not declared in this scope
     buffer = ltoa(mant, buffer, DEC);
              ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:51:14: note: suggested alternative: 'utoa'
     buffer = ltoa(mant, buffer, DEC);
              ^~~~
              utoa
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'mString<SIZE>& mString<SIZE>::add(int32_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:101:9: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         ltoa(value, vBuf, DEC);
         ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:101:9: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'bool mString<SIZE>::operator==(int32_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:265:29: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         return !strcmp(buf, ltoa(value, valBuf, DEC));
                             ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'bool mString<SIZE>::operator==(int16_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:269:29: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         return !strcmp(buf, ltoa(value, valBuf, DEC));
                             ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h: In member function 'bool mString<SIZE>::operator==(int8_t)':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:273:29: error: there are no arguments to 'ltoa' that depend on a template parameter, so a declaration of 'ltoa' must be available [-fpermissive]
         return !strcmp(buf, ltoa(value, valBuf, DEC));
                             ^~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino: In function 'void setup()':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:77:34: error: ambiguous overload for 'operator+' (operand types are 'mString<50>' and 'int')
   test = test + "cheburek" + ',' + 123 + ',' + 3.14;
          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:161:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(char) [with short unsigned int SIZE = 50]
     mString operator + (const char c) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:170:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(uint32_t) [with short unsigned int SIZE = 50; uint32_t = long unsigned int]
     mString operator + (uint32_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:173:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(int32_t) [with short unsigned int SIZE = 50; int32_t = long int]
     mString operator + (int32_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:176:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(uint16_t) [with short unsigned int SIZE = 50; uint16_t = short unsigned int]
     mString operator + (uint16_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:179:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(int16_t) [with short unsigned int SIZE = 50; int16_t = short int]
     mString operator + (int16_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:182:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(uint8_t) [with short unsigned int SIZE = 50; uint8_t = unsigned char]
     mString operator + (uint8_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:185:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(int8_t) [with short unsigned int SIZE = 50; int8_t = signed char]
     mString operator + (int8_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:188:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(double) [with short unsigned int SIZE = 50]
     mString operator + (double value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:113:10: error: ambiguous overload for 'operator=' (operand types are 'mString<50>' and 'int')
   test = 12;
          ^~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:199:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(char) [with short unsigned int SIZE = 50]
     mString& operator = (const char c) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:211:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(uint32_t) [with short unsigned int SIZE = 50; uint32_t = long unsigned int]
     mString& operator = (uint32_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:215:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(int32_t) [with short unsigned int SIZE = 50; int32_t = long int]
     mString& operator = (int32_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:219:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(uint16_t) [with short unsigned int SIZE = 50; uint16_t = short unsigned int]
     mString& operator = (uint16_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:223:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(int16_t) [with short unsigned int SIZE = 50; int16_t = short int]
     mString& operator = (int16_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:227:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(uint8_t) [with short unsigned int SIZE = 50; uint8_t = unsigned char]
     mString& operator = (uint8_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:231:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(int8_t) [with short unsigned int SIZE = 50; int8_t = signed char]
     mString& operator = (int8_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:235:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(double) [with short unsigned int SIZE = 50]
     mString& operator = (double value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:114:23: error: ambiguous overload for 'operator==' (operand types are 'mString<50>' and 'int')
   Serial.println(test == 12);     // 1
                  ~~~~~^~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:245:10: note: candidate: bool mString<SIZE>::operator==(char) [with short unsigned int SIZE = 50]
     bool operator == (const char c) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:251:10: note: candidate: bool mString<SIZE>::operator==(uint32_t) [with short unsigned int SIZE = 50; uint32_t = long unsigned int]
     bool operator == (uint32_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:255:10: note: candidate: bool mString<SIZE>::operator==(uint16_t) [with short unsigned int SIZE = 50; uint16_t = short unsigned int]
     bool operator == (uint16_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:259:10: note: candidate: bool mString<SIZE>::operator==(uint8_t) [with short unsigned int SIZE = 50; uint8_t = unsigned char]
     bool operator == (uint8_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:263:10: note: candidate: bool mString<SIZE>::operator==(int32_t) [with short unsigned int SIZE = 50; int32_t = long int]
     bool operator == (int32_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:267:10: note: candidate: bool mString<SIZE>::operator==(int16_t) [with short unsigned int SIZE = 50; int16_t = short int]
     bool operator == (int16_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:271:10: note: candidate: bool mString<SIZE>::operator==(int8_t) [with short unsigned int SIZE = 50; int8_t = signed char]
     bool operator == (int8_t v

arduino:megaavr:nona4809 @ 1.8.7

Inclusion

Result: PASS

Sketch uses 802 bytes (1%) of program storage space. Maximum is 49152 bytes.
Global variables use 22 bytes (0%) of dynamic memory, leaving 6122 bytes for local variables. Maximum is 6144 bytes.

examples/demo

Result: PASS

Sketch uses 8648 bytes (17%) of program storage space. Maximum is 49152 bytes.
Global variables use 189 bytes (3%) of dynamic memory, leaving 5955 bytes for local variables. Maximum is 6144 bytes.

arduino:samd:mkrwifi1010 @ 1.8.12

Inclusion

Result: PASS

Sketch uses 12156 bytes (4%) of program storage space. Maximum is 262144 bytes.
Global variables use 2996 bytes (9%) of dynamic memory, leaving 29772 bytes for local variables. Maximum is 32768 bytes.

examples/demo

Result: FAIL

/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino: In function 'void setup()':
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:77:34: error: ambiguous overload for 'operator+' (operand types are 'mString<50>' and 'int')
   test = test + "cheburek" + ',' + 123 + ',' + 3.14;
          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:161:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(char) [with short unsigned int SIZE = 50]
     mString operator + (const char c) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:170:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(uint32_t) [with short unsigned int SIZE = 50; uint32_t = long unsigned int]
     mString operator + (uint32_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:173:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(int32_t) [with short unsigned int SIZE = 50; int32_t = long int]
     mString operator + (int32_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:176:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(uint16_t) [with short unsigned int SIZE = 50; uint16_t = short unsigned int]
     mString operator + (uint16_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:179:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(int16_t) [with short unsigned int SIZE = 50; int16_t = short int]
     mString operator + (int16_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:182:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(uint8_t) [with short unsigned int SIZE = 50; uint8_t = unsigned char]
     mString operator + (uint8_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:185:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(int8_t) [with short unsigned int SIZE = 50; int8_t = signed char]
     mString operator + (int8_t value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:188:13: note: candidate: mString<SIZE> mString<SIZE>::operator+(double) [with short unsigned int SIZE = 50]
     mString operator + (double value) {
             ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:113:10: error: ambiguous overload for 'operator=' (operand types are 'mString<50>' and 'int')
   test = 12;
          ^~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:199:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(char) [with short unsigned int SIZE = 50]
     mString& operator = (const char c) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:211:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(uint32_t) [with short unsigned int SIZE = 50; uint32_t = long unsigned int]
     mString& operator = (uint32_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:215:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(int32_t) [with short unsigned int SIZE = 50; int32_t = long int]
     mString& operator = (int32_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:219:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(uint16_t) [with short unsigned int SIZE = 50; uint16_t = short unsigned int]
     mString& operator = (uint16_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:223:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(int16_t) [with short unsigned int SIZE = 50; int16_t = short int]
     mString& operator = (int16_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:227:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(uint8_t) [with short unsigned int SIZE = 50; uint8_t = unsigned char]
     mString& operator = (uint8_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:231:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(int8_t) [with short unsigned int SIZE = 50; int8_t = signed char]
     mString& operator = (int8_t value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:235:14: note: candidate: mString<SIZE>& mString<SIZE>::operator=(double) [with short unsigned int SIZE = 50]
     mString& operator = (double value) {
              ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:114:23: error: ambiguous overload for 'operator==' (operand types are 'mString<50>' and 'int')
   Serial.println(test == 12);     // 1
                  ~~~~~^~~~~
In file included from /home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/examples/demo/demo.ino:1:0:
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:245:10: note: candidate: bool mString<SIZE>::operator==(char) [with short unsigned int SIZE = 50]
     bool operator == (const char c) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:251:10: note: candidate: bool mString<SIZE>::operator==(uint32_t) [with short unsigned int SIZE = 50; uint32_t = long unsigned int]
     bool operator == (uint32_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:255:10: note: candidate: bool mString<SIZE>::operator==(uint16_t) [with short unsigned int SIZE = 50; uint16_t = short unsigned int]
     bool operator == (uint16_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:259:10: note: candidate: bool mString<SIZE>::operator==(uint8_t) [with short unsigned int SIZE = 50; uint8_t = unsigned char]
     bool operator == (uint8_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:263:10: note: candidate: bool mString<SIZE>::operator==(int32_t) [with short unsigned int SIZE = 50; int32_t = long int]
     bool operator == (int32_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:267:10: note: candidate: bool mString<SIZE>::operator==(int16_t) [with short unsigned int SIZE = 50; int16_t = short int]
     bool operator == (int16_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:271:10: note: candidate: bool mString<SIZE>::operator==(int8_t) [with short unsigned int SIZE = 50; int8_t = signed char]
     bool operator == (int8_t value) {
          ^~~~~~~~
/home/ec2-user/arduino-testlib/cli-datadir/user/libraries/mString/src/mString.h:275:10: note: candidate: bool mString<SIZE>::operator==(float) [with short unsigned int SIZE = 50]
     bool operator == (float value) {
          ^~~~~~~~

esp32:esp32:d1_mini32 @ 1.0.6

Inclusion

Result: PASS

Sketch uses 197776 bytes (15%) of program storage space. Maximum is 1310720 bytes.
Global variables use 13084 bytes (3%) of dynamic memory, leaving 314596 bytes for local variables. Maximum is 327680 bytes.

examples/demo

Result: PASS

Sketch uses 212694 bytes (16%) of program storage space. Maximum is 1310720 bytes.
Global variables use 13416 bytes (4%) of dynamic memory, leaving 314264 bytes for local variables. Maximum is 327680 bytes.