-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compiling Errors with latest Arduino IDE 2.0.4 #59
Comments
I have the same issue |
Same here, too. The previous version of Sofar2mqtt was fine, seemed to compile without warnings or errors. I'm only getting the compile warnings in the CRC section, though, but that may be because I'm using a different display. The earlier version works fine, whereas this version seems to fall over and not connect, perhaps because of the compile warnings? This screenshot highlights the lines that are causing the issue: |
Is somebody have a compilable version for ide 2? |
Has this been resolved? I have tried various versions of Arduino IDE and Sofar2mqtt and none have worked. I've not attempted older libraries as the permutations are legion. Does anyone know the required permutation of everything?! |
Hi there
When I take the code from the project, I get the following errors when compiling it - although it does compile, but can this reported errors be fixed ?
C:\Users\corma\Downloads\Sofar2mqtt\Sofar2mqtt.ino: In function 'int listen(modbusResponse*)':
C:\Users\corma\Downloads\Sofar2mqtt\Sofar2mqtt.ino:644:24: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
644 | resp->errorMessage = "Response too short";
| ^~~~~~~~~~~~~~~~~~~~
C:\Users\corma\Downloads\Sofar2mqtt\Sofar2mqtt.ino:649:24: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
649 | resp->errorMessage = "Valid data frame";
| ^~~~~~~~~~~~~~~~~~
C:\Users\corma\Downloads\Sofar2mqtt\Sofar2mqtt.ino:654:24: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
654 | resp->errorMessage = "Error: invalid data frame";
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp: In member function 'void Adafruit_SSD1306::drawFastHLineInternal(int16_t, int16_t, int16_t, uint16_t)':
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:612:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
612 | register uint8_t *pBuf = buffer;
| ^~~~
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:618:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
618 | register uint8_t mask = 1 << (y&7);
| ^~~~
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp: In member function 'void Adafruit_SSD1306::drawFastVLineInternal(int16_t, int16_t, int16_t, uint16_t)':
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:686:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
686 | register uint8_t y = __y;
| ^
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:687:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
687 | register uint8_t h = __h;
| ^
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:691:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
691 | register uint8_t *pBuf = buffer;
| ^~~~
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:698:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
698 | register uint8_t mod = (y&7);
| ^~~
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:706:22: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
706 | register uint8_t mask = premask[mod];
| ^~~~
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:744:24: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
744 | register uint8_t val = (color == WHITE) ? 255 : 0;
| ^~~
c:\Users\corma\Documents\Arduino\libraries\Adafruit_SSD1306_Wemos_Mini_OLED\Adafruit_SSD1306.cpp:766:22: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
766 | register uint8_t mask = postmask[mod];
| ^~~~
The text was updated successfully, but these errors were encountered: