openroberta-lab icon indicating copy to clipboard operation
openroberta-lab copied to clipboard

Compilation errors for some Arduino robots on Windows

Open RaghuvirShirodkar opened this issue 2 years ago • 1 comments

Describe the bug For Arduino Nano 33 BLE and Arduino Uno Wifi Rev 2, compilation of generated code fails on locally started server on Windows.

To Reproduce Steps to reproduce the behavior:

  1. Start the server locally on Windows.
  2. Navigate to localhost:1999.
  3. Select robot Nepo4Arduino Uno Wifi Rev2 or Nepo4Nano33BLE.
  4. Click on Menu -> open source code editor.
  5. Click on Build source code button.
  6. See Server Error.

Expected behavior Code should compile successfully, unless the code itself is wrong!

Device information

  • Type: Laptop
  • OS: Windows 11
  • Browser: Firefox

Additional context It seems the ARDUINO_ARCH being used for the two robots (mbed and megaavr) has some problems on Windows, as other Arduino robots (using ARDUINO_ARCH avr) compile without errors.

RaghuvirShirodkar avatar May 31 '22 06:05 RaghuvirShirodkar

Error logs from the call to the cross compiler build script:

For Arduino Nano 33 BLE

In file included from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/platform.h:24,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/drivers/InterruptIn.h:20,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Arduino.h:35,
                 from c:\users\rob3rta\appdata\local\temp\osu78q_7qe--\nepoprog\source\nepoprog.cpp:4:
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:77:11: error: 'memchr' has not been declared in '::'
   77 |   using ::memchr;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:78:11: error: 'memcmp' has not been declared in '::'
   78 |   using ::memcmp;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:79:11: error: 'memcpy' has not been declared in '::'
   79 |   using ::memcpy;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:80:11: error: 'memmove' has not been declared in '::'
   80 |   using ::memmove;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:81:11: error: 'memset' has not been declared in '::'
   81 |   using ::memset;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:82:11: error: 'strcat' has not been declared in '::'
   82 |   using ::strcat;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:83:11: error: 'strcmp' has not been declared in '::'
   83 |   using ::strcmp;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:84:11: error: 'strcoll' has not been declared in '::'
   84 |   using ::strcoll;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:85:11: error: 'strcpy' has not been declared in '::'
   85 |   using ::strcpy;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:86:11: error: 'strcspn' has not been declared in '::'
   86 |   using ::strcspn;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:87:11: error: 'strerror' has not been declared in '::'
   87 |   using ::strerror;
      |           ^~~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:88:11: error: 'strlen' has not been declared in '::'
   88 |   using ::strlen;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:89:11: error: 'strncat' has not been declared in '::'
   89 |   using ::strncat;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:90:11: error: 'strncmp' has not been declared in '::'
   90 |   using ::strncmp;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:91:11: error: 'strncpy' has not been declared in '::'
   91 |   using ::strncpy;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:92:11: error: 'strspn' has not been declared in '::'
   92 |   using ::strspn;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:93:11: error: 'strtok' has not been declared in '::'
   93 |   using ::strtok;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:94:11: error: 'strxfrm' has not been declared in '::'
   94 |   using ::strxfrm;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:95:11: error: 'strchr' has not been declared in '::'
   95 |   using ::strchr;
      |           ^~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:96:11: error: 'strpbrk' has not been declared in '::'
   96 |   using ::strpbrk;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:97:11: error: 'strrchr' has not been declared in '::'
   97 |   using ::strrchr;
      |           ^~~~~~~
c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:98:11: error: 'strstr' has not been declared in '::'
   98 |   using ::strstr;
      |           ^~~~~~
In file included from c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:42,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/platform.h:24,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/drivers/InterruptIn.h:20,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Arduino.h:35,
                 from c:\users\rob3rta\appdata\local\temp\osu78q_7qe--\nepoprog\source\nepoprog.cpp:4:
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h: In member function 'void mbed::Callback<R(ArgTs ...)>::generate(const F&)':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:646:20: error: expected type-specifier before 'reinterpret_cast'
  646 |         new (this) F(f);
      |                    ^
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:646:20: error: expected ')' before 'reinterpret_cast'
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:646:20: note: to match this '('
  646 |         new (this) F(f);
      |                    ^
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h: In static member function 'static void mbed::Callback<R(ArgTs ...)>::function_move(void*, const void*)':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:660:17: error: expected type-specifier before 'reinterpret_cast'
  660 |         new (d) F(*(F *)p);
      |                 ^
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:660:17: error: expected ')' before 'reinterpret_cast'
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:660:17: note: to match this '('
  660 |         new (d) F(*(F *)p);
      |                 ^
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h: In static member function 'static void mbed::Callback<R(ArgTs ...)>::function_dtor(void*)':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:666:20: error: expected identifier before '(' token
  666 |         ((F *)p)->~F();
      |                    ^
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:666:20: error: expected '>' before '__FlashStringHelper'
  666 |         ((F *)p)->~F();
      |                    ^
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:666:20: error: expected '(' before '__FlashStringHelper'
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:666:20: error: '__FlashStringHelper' was not declared in this scope; did you mean 'arduino::__FlashStringHelper'?
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino\api/string.h:44:7: note: 'arduino::__FlashStringHelper' declared here
   44 | class __FlashStringHelper;
      |       ^~~~~~~~~~~~~~~~~~~
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:666:20: error: expected primary-expression before '>' token
  666 |         ((F *)p)->~F();
      |                    ^
In file included from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino\api/string.h:33,
                 from c:\program files (x86)\arm gnu toolchain arm-none-eabi\11.2 2022.02\arm-none-eabi\include\c++\11.2.1\cstring:42,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/platform.h:24,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/drivers/InterruptIn.h:20,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Arduino.h:35,
                 from c:\users\rob3rta\appdata\local\temp\osu78q_7qe--\nepoprog\source\nepoprog.cpp:4:
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:666:20: error: expected primary-expression before ')' token
  666 |         ((F *)p)->~F();
      |                    ^
In file included from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/Stream.h:25,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/Client.h:22,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/ArduinoAPI.h:29,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Arduino.h:47,
                 from c:\users\rob3rta\appdata\local\temp\osu78q_7qe--\nepoprog\source\nepoprog.cpp:4:
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/Print.h: In member function 'size_t arduino::Print::write(const char*)':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/Print.h:52:42: error: 'strlen' was not declared in this scope
   52 |       return write((const uint8_t *)str, strlen(str));
      |                                          ^~~~~~
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/Print.h:26:1: note: 'strlen' is defined in header '<cstring>'; did you forget to '#include <cstring>'?
   25 | #include "Printable.h"
  +++ |+#include <cstring>
   26 |
In file included from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Serial.h:23,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Arduino.h:125,
                 from c:\users\rob3rta\appdata\local\temp\osu78q_7qe--\nepoprog\source\nepoprog.cpp:4:
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/RingBuffer.h: In instantiation of 'arduino::RingBufferN<N>::RingBufferN() [with int N = 256]':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Serial.h:36:121:   required from here
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/RingBuffer.h:62:11: error: 'memset' was not declared in this scope
   62 |     memset( _aucBuffer, 0, N ) ;
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/api/RingBuffer.h:1:1: note: 'memset' is defined in header '<cstring>'; did you forget to '#include <cstring>'?
  +++ |+#include <cstring>
    1 | /*
In file included from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/drivers/InterruptIn.h:26,
                 from ../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/Arduino.h:35,
                 from c:\users\rob3rta\appdata\local\temp\osu78q_7qe--\nepoprog\source\nepoprog.cpp:4:
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h: In instantiation of 'mbed::Callback<R(ArgTs ...)>::Callback(R (*)(ArgTs ...)) [with R = void; ArgTs = {}]':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/rtos/Thread.h:103:5:   required from here
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:86:19: error: 'memset' was not declared in this scope
   86 |             memset(this, 0, sizeof(Callback));
      |             ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:24:1: note: 'memset' is defined in header '<cstring>'; did you forget to '#include <cstring>'?
   23 | #include "platform/mbed_assert.h"
  +++ |+#include <cstring>
   24 | #include "platform/mbed_toolchain.h"
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h: In instantiation of 'mbed::Callback<R(ArgTs ...)>::Callback(const mbed::Callback<R(ArgTs ...)>&) [with R = void; ArgTs = {}]':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/rtos/Thread.h:155:20:   required from here
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:97:15: error: 'memset' was not declared in this scope
   97 |         memset(this, 0, sizeof(Callback));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:97:15: note: 'memset' is defined in header '<cstring>'; did you forget to '#include <cstring>'?
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h: In instantiation of 'void mbed::Callback<R(ArgTs ...)>::generate(const F&) [with F = mbed::Callback<void()>::function_context<void (*)(void*), void>; R = void; ArgTs = {}]':
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:151:17:   required from 'mbed::Callback<R(ArgTs ...)>::Callback(R (*)(T*, ArgTs ...), U*) [with T = void; U = void; R = void; ArgTs = {}]'
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:782:12:   required from 'mbed::Callback<R(ArgTs ...)> mbed::callback(R (*)(T*, ArgTs ...), U*) [with T = void; U = void; R = void; ArgTs = {}]'
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/rtos/Thread.h:253:35:   required from here
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:645:15: error: 'memset' was not declared in this scope
  645 |         memset(this, 0, sizeof(Callback));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../ora-cc-rsc/RobotArdu/\arduino-resources\hardware\arduino\mbed\cores\arduino/mbed/platform/Callback.h:645:15: note: 'memset' is defined in header '<cstring>'; did you forget to '#include <cstring>'?

For Arduino Uno Wifi Rev 2

In file included from ../ora-cc-rsc/RobotArdu//arduino-resources/hardware/arduino/megaavr/cores/arduino/api/Stream.h:25:0,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/hardware/arduino/megaavr/cores/arduino/api/Client.h:22,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/hardware/arduino/megaavr/cores/arduino/api/ArduinoAPI.h:29,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/hardware/arduino/megaavr/cores/arduino/Arduino.h:23,
                 from C:\Users\Rob3rta\AppData\Local\Temp\--8_8Uqa8OPu/NEPOprog/source//NEPOprog.cpp:3:
../ora-cc-rsc/RobotArdu//arduino-resources/hardware/arduino/megaavr/cores/arduino/api/Print.h: In member function 'size_t arduino::Print::write(const char*)':
../ora-cc-rsc/RobotArdu//arduino-resources/hardware/arduino/megaavr/cores/arduino/api/Print.h:52:42: error: 'strlen' was not declared in this scope
       return write((const uint8_t *)str, strlen(str));
                                          ^~~~~~
../ora-cc-rsc/RobotArdu//arduino-resources/hardware/arduino/megaavr/cores/arduino/api/Print.h:52:42: note: suggested alternative: 'strlen_P'
       return write((const uint8_t *)str, strlen(str));
                                          ^~~~~~
                                          strlen_P
In file included from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/memory:20:0,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:22,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/iosfwd:21,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/serstream:48,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/ArduinoSTL.h:12,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/RobertaFunctions/NEPODefs.h:38,
                 from C:\Users\Rob3rta\AppData\Local\Temp\--8_8Uqa8OPu/NEPOprog/source//NEPOprog.cpp:5:
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/new: At global scope:
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/new:40:54: warning: dynamic exception specifications are deprecated in C++11 [-Wdeprecated]
 _UCXXEXPORT void* operator new(std::size_t numBytes) throw(std::bad_alloc);
                                                      ^~~~~
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/new:46:56: warning: dynamic exception specifications are deprecated in C++11 [-Wdeprecated]
 _UCXXEXPORT void* operator new[](std::size_t numBytes) throw(std::bad_alloc);
                                                        ^~~~~
In file included from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/iosfwd:21:0,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/serstream:48,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/ArduinoSTL.h:12,
                 from ../ora-cc-rsc/RobotArdu//arduino-resources/includes/RobertaFunctions/NEPODefs.h:38,
                 from C:\Users\Rob3rta\AppData\Local\Temp\--8_8Uqa8OPu/NEPOprog/source//NEPOprog.cpp:5:
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits: In static member function 'static bool std::char_traits<char>::lt(const char_type&, const char_type&)':
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:67:7: error: 'strncmp' was not declared in this scope
    if(strncmp(&c1, &c2, 1) < 0){
       ^~~~~~~
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:67:7: note: suggested alternative: 'strncmp_P'
    if(strncmp(&c1, &c2, 1) < 0){
       ^~~~~~~
       strncmp_P
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits: In static member function 'static std::char_traits<char>::char_type* std::char_traits<char>::move(std::char_traits<char>::char_type*, const char_type*, size_t)':
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:74:19: error: 'memmove' was not declared in this scope
    return (char*) memmove(s1, s2, n);
                   ^~~~~~~
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:74:19: note: suggested alternative: 'remove'
    return (char*) memmove(s1, s2, n);
                   ^~~~~~~
                   remove
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits: In static member function 'static std::char_traits<char>::char_type* std::char_traits<char>::assign(std::char_traits<char>::char_type*, size_t, std::char_traits<char>::char_type)':
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:85:19: error: 'memset' was not declared in this scope
    return (char *)memset(s, a, n);
                   ^~~~~~
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:85:19: note: suggested alternative: 'memmem_P'
    return (char *)memset(s, a, n);
                   ^~~~~~
                   memmem_P
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits: In static member function 'static int std::char_traits<char>::compare(const char_type*, const char_type*, size_t)':
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:89:11: error: 'strncmp' was not declared in this scope
    return strncmp(s1, s2, n);
           ^~~~~~~
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:89:11: note: suggested alternative: 'strncmp_P'
    return strncmp(s1, s2, n);
           ^~~~~~~
           strncmp_P
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits: In static member function 'static size_t std::char_traits<char>::length(const char_type*)':
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:93:11: error: 'strlen' was not declared in this scope
    return strlen(s);
           ^~~~~~
../ora-cc-rsc/RobotArdu//arduino-resources/includes/ArduinoSTL/src/char_traits:93:11: note: suggested alternative: 'strlen_P'
    return strlen(s);
           ^~~~~~
           strlen_P

RaghuvirShirodkar avatar May 31 '22 08:05 RaghuvirShirodkar