jasoncoon / esp8266-fastled-webserver

GNU General Public License v3.0
712 stars 360 forks source link

unable to compile in arduino ide 1.8.16 or 2.0.4 #256

Open macsimski opened 1 year ago

macsimski commented 1 year ago

when i try to compile with every library and boards file updated, i get the following error list:

`In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:50, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:61:37: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 61 | inline void hi(register port_ptr_t port) attribute ((always_inline)) { port |= mPinMask; } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:62:37: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 62 | inline void lo(register port_ptr_t port) attribute ((always_inline)) { port &= ~mPinMask; } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:63:34: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 63 | inline void set(register port_t val) attribute ((always_inline)) { mPort = val; } | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:65:42: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 65 | inline void fastset(register port_ptr_t port, register port_t val) attribute ((always_inline)) { port = val; } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:65:64: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 65 | inline void fastset(register port_ptr_t port, register port_t val) attribute ((always_inline)) { port = val; } | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:228:44: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 228 | inline static void hi(register port_ptr_t port) attribute ((always_inline)) { } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:229:44: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 229 | inline static void lo(register port_ptr_t port) attribute ((always_inline)) { } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:230:41: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 230 | inline static void set(register port_t val) attribute ((always_inline)) { } | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:232:49: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 232 | inline static void fastset(register port_ptr_t port, register port_t val) attribute ((always_inline)) { } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastpin.h:232:71: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 232 | inline static void fastset(register port_ptr_t port, register port_t val) attribute ((always_inline)) { } | ^~~ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:51, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_types.h:22:82: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 22 | static attribute((always_inline)) inline uint8_t adjust(register uint8_t data) { return data; } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_types.h:23:82: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 23 | static attribute((always_inline)) inline uint8_t adjust(register uint8_t data, register uint8_t scale) { return scale8(data, scale); } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_types.h:23:105: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 23 | static attribute((always_inline)) inline uint8_t adjust(register uint8_t data, register uint8_t scale) { return scale8(data, scale); } | ^~~~~ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastled_esp8266.h:3, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms.h:34, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:54, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastpin_esp8266.h:24:44: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 24 | inline static void set(register port_t val) attribute ((always_inline)) { if(PIN < 16) { _GPB._GPO = val; } else { GP16O = val; }} | ^~~ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastled_esp8266.h:3, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms.h:34, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:54, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastpin_esp8266.h:30:47: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 30 | inline static void hi(register port_ptr_t port) attribute ((always_inline)) { hi(); } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastpin_esp8266.h:31:47: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 31 | inline static void lo(register port_ptr_t port) attribute ((always_inline)) { lo(); } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastpin_esp8266.h:32:52: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 32 | inline static void fastset(register port_ptr_t port, register port_t val) attribute ((always_inline)) { port = val; } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastpin_esp8266.h:32:74: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 32 | inline static void fastset(register port_ptr_t port, register port_t val) attribute ((always_inline)) { port = val; } | ^~~ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastled_esp8266.h:4, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms.h:34, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:54, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_esp8266.h:53:102: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 53 | template attribute ((always_inline)) inline static bool writeBits(register uint32_t & last_mark, register uint32_t b) { | ^~~~~ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastled_esp8266.h:4, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms.h:34, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:54, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_esp8266.h:53:131: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 53 | template attribute ((always_inline)) inline static bool writeBits(register uint32_t & last_mark, register uint32_t b) { | ^ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_esp8266.h: In static member function 'static bool ClocklessController<D5, T1, T2, T3, RGB_ORDER, XTRA0, FLIP, WAIT_TIME>::writeBits(uint32_t&, uint32_t)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_esp8266.h:55:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 55 | for(register uint32_t i = BITS; i > 0; --i) { | ^ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_esp8266.h: In static member function 'static uint32_t ClocklessController<D5, T1, T2, T3, RGB_ORDER, XTRA0, FLIP, WAIT_TIME>::showRGBInternal(PixelController)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_esp8266.h:83:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 83 | register uint32_t b = pixels.loadAndScale0(); | ^ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/fastled_esp8266.h:5, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms.h:34, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:54, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h: At global scope: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h:73:111: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 73 | template<int BITS,int PX> attribute ((always_inline)) inline static void writeBits(register uint32_t & last_mark, register Lines & b, PixelController<RGB_ORDER, LANES, PORT_MASK> &pixels) { // , register uint32_t & b2) { | ^~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h:73:139: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 73 | template<int BITS,int PX> attribute ((always_inline)) inline static void writeBits(register uint32_t & last_mark, register Lines & b, PixelController<RGB_ORDER, LANES, PORT_MASK> &pixels) { // , register uint32_t & b2) { | ^ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h: In static member function 'static void InlineBlockClocklessController<LANES, FIRST_PIN, T1, T2, T3, RGB_ORDER, XTRA0, FLIP, WAIT_TIME>::writeBits(uint32_t&, InlineBlockClocklessController<LANES, FIRST_PIN, T1, T2, T3, RGB_ORDER, XTRA0, FLIP, WAIT_TIME>::Lines&, PixelController<RGB_ORDER, LANES, (((1 << ((LANES < 6) ? LANES : 6)) - 1) & 65535)>&)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h:77:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 77 | register uint8_t d = pixels.template getd(pixels); | ^ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h:78:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 78 | register uint8_t scale = pixels.template getscale(pixels); | ^~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h:80:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 80 | for(register uint32_t i = 0; i < USED_LANES; ++i) { | ^ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/platforms/esp/8266/clockless_block_esp8266.h:95:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 95 | for(register uint32_t i = USED_LANES; i < 8; ++i) { | ^ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi.h:9, from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:67, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h: At global scope: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:262:55: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 262 | template void writeBytes(register uint8_t data, int len) { | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:307:36: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 307 | void writeBytes(register uint8_t data, int len) { writeBytes(data, len); } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h: In static member function 'static void AVRSoftwareSPIOutput<D5, CLOCK_PIN, SPI_SPEED>::writeBytesValueRaw(uint8_t, int)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:232:23: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 232 | register data_ptr_t datapin = FastPin::port(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:237:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 237 | register clock_ptr_t clockpin = FastPin::port(); | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:238:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 238 | register data_t datahi = FastPin::hival(); | ^~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:239:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 239 | register data_t datalo = FastPin::loval(); | ^~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:240:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 240 | register clock_t clockhi = FastPin::hival(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:241:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 241 | register clock_t clocklo = FastPin::loval(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:248:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 248 | register data_t datahi_clockhi = FastPin::hival() | FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:249:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 249 | register data_t datalo_clockhi = FastPin::loval() | FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:250:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 250 | register data_t datahi_clocklo = FastPin::hival() & ~FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:251:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 251 | register data_t datalo_clocklo = FastPin::loval() & ~FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h: In member function 'void AVRSoftwareSPIOutput<D5, CLOCK_PIN, SPI_SPEED>::writeBytes(uint8_t, int)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:270:24: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 270 | register clock_ptr_t clockpin = FastPin::port(); | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:271:23: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 271 | register data_ptr_t datapin = FastPin::port(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:276:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 276 | register data_t datahi = FastPin::hival(); | ^~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:277:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 277 | register data_t datalo = FastPin::loval(); | ^~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:278:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 278 | register clock_t clockhi = FastPin::hival(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:279:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 279 | register clock_t clocklo = FastPin::loval(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:289:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 289 | register data_t datahi_clockhi = FastPin::hival() | FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:290:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 290 | register data_t datalo_clockhi = FastPin::loval() | FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:291:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 291 | register data_t datahi_clocklo = FastPin::hival() & ~FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:292:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 292 | register data_t datalo_clocklo = FastPin::loval() & ~FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h: In member function 'void AVRSoftwareSPIOutput<D5, CLOCK_PIN, SPI_SPEED>::writePixels(PixelController)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:333:23: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 333 | register data_ptr_t datapin = FastPin::port(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:336:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 336 | register clock_ptr_t clockpin = FastPin::port(); | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:339:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 339 | register data_t datahi = FastPin::hival(); | ^~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:340:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 340 | register data_t datalo = FastPin::loval(); | ^~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:341:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 341 | register clock_t clockhi = FastPin::hival(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:342:21: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 342 | register clock_t clocklo = FastPin::loval(); | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:357:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 357 | register data_t datahi_clockhi = FastPin::hival() | FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:358:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 358 | register data_t datalo_clockhi = FastPin::loval() | FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:359:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 359 | register data_t datahi_clocklo = FastPin::hival() & ~FastPin::mask(); | ^~~~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/fastspi_bitbang.h:360:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 360 | register data_t datalo_clocklo = FastPin::loval() & ~FastPin::mask(); | ^~~~~~ In file included from /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:68, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/chipsets.h: At global scope: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/chipsets.h:88:80: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 88 | attribute((always_inline)) inline static uint8_t adjust(register uint8_t data) { return ((data>>1) | 0x80) + ((data && (data<254)) & 0x01); } | ^~~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/chipsets.h: In member function 'virtual void LPD6803Controller<D5, CLOCK_PIN, RGB_ORDER, SPI_SPEED>::showPixels(PixelController&)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/chipsets.h:175:31: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 175 | register uint16_t command; | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/chipsets.h: In member function 'void P9813Controller<D5, CLOCK_PIN, RGB_ORDER, SPI_SPEED>::writeLed(uint8_t, uint8_t, uint8_t)': /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/chipsets.h:349:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister] 349 | register uint8_t top = 0xC0 | ((~b & 0xC0) >> 2) | ((~g & 0xC0) >> 4) | ((~r & 0xC0) >> 6); | ^~~ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/config.h:88, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:27, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino: In function 'void setup()': /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/include/configs/controller/controller_esp8266.h:27:26: error: 'D5' was not declared in this scope 27 | #define DATA_PIN D5 // d1 mini | ^~ /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:29: note: in expansion of macro 'DATA_PIN' 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^~~~ /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: no matching function for call to 'CFastLED::addLeds<WS2812, , RGB>(CRGB [36], int)' 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:225:130: note: candidate: 'template<ESPIChipsets CHIPSET, unsigned char D5, unsigned char CLOCK_PIN, EOrder RGB_ORDER, unsigned int SPI_DATA_RATE> CLEDController& CFastLED::addLeds(CRGB, int, int)' 225 | template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN, EOrder RGB_ORDER, uint32_t SPI_DATA_RATE > CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:225:130: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: template argument 2 is invalid 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:239:95: note: candidate: 'template<ESPIChipsets CHIPSET, unsigned char D5, unsigned char CLOCK_PIN> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 239 | template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN > static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:239:95: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: template argument 2 is invalid 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:253:113: note: candidate: 'template<ESPIChipsets CHIPSET, unsigned char D5, unsigned char CLOCK_PIN, EOrder RGB_ORDER> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 253 | template<ESPIChipsets CHIPSET, uint8_t DATA_PIN, uint8_t CLOCK_PIN, EOrder RGB_ORDER > static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:253:113: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: template argument 2 is invalid 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:303:25: note: candidate: 'template<template<unsigned char D5, EOrder RGB_ORDER> class CHIPSET, unsigned char D5, EOrder RGB_ORDER> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 303 | static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:303:25: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: template argument 2 is invalid 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:309:25: note: candidate: 'template<template<unsigned char D5, EOrder RGB_ORDER> class CHIPSET, unsigned char D5> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 309 | static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:309:25: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: wrong number of template arguments (3, should be 2) 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:315:25: note: candidate: 'template<template class CHIPSET, unsigned char D5> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 315 | static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:315:25: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: wrong number of template arguments (3, should be 2) 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:359:25: note: candidate: 'template<template class CHIPSET, EOrder RGB_ORDER> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 359 | static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:359:25: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: wrong number of template arguments (3, should be 2) 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:365:25: note: candidate: 'template<template class CHIPSET> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 365 | static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:365:25: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: wrong number of template arguments (3, should be 1) 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:433:25: note: candidate: 'template<EBlockChipsets CHIPSET, int NUM_LANES, EOrder RGB_ORDER> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 433 | static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:433:25: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: template argument 2 is invalid 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^ In file included from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/common.h:36, from /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19: /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:474:25: note: candidate: 'template<EBlockChipsets CHIPSET, int NUM_LANES> static CLEDController& CFastLED::addLeds(CRGB, int, int)' 474 | static CLEDController &addLeds(struct CRGB data, int nLedsOrOffset, int nLedsIfOffset = 0) { | ^~~ /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:474:25: note: template argument deduction/substitution failed: /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:277:68: error: wrong number of template arguments (3, should be 2) 277 | FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_PIXELS); // for WS2812 (Neopixel) | ^

exit status 1

Compilation error: 'D5' was not declared in this scope`

am i doing something wrong?

this is on ubuntu 22.04 with the latest updates

macsimski commented 1 year ago

update: after adding the line:

pragma GCC diagnostic ignored "-Wregister"

to a lot of headers in the fastled lib, i was only left with the essential errors:

n function 'void setup()': /home/simon/Documents/esp8266/esp8266-fastled-webserver/esp8266-fastled-webserver/include/configs/controller/controller_esp8266.h:27:26: error: 'D5' was not declared in this scope 27 | #define DATA_PIN D5 // d1 mini

it seems that the compiler does not like the name D5 for a pin. could it be the esp8266 core?

marmilicious commented 1 year ago

Did you try just using 5 instead of D5?

macsimski commented 1 year ago

i tried 14 in stead of D5 as that seems to be the equivalent and that error disappeared. but now other errors remain, like a compilation error:

Compilation error: expected '>' before numeric constant

of course without a file link, so not helpfull. (potentional bug report to the arduino ide)

but besides that, I am suspecting a wrong version of fastled. what version should i use. i have tried 3.3.0 and 3.5.0 as a lot of errors point to files in that library.

like:

/home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:242:64: error: wrong number of template arguments (2, should be 1) 242 | case LPD8806: { static LPD8806Controller<DATA_PIN, CLOCK_PIN> c; return addLeds(&c, data, nLedsOrOffset, nLedsIfOffset); }

and /home/simon/Documents/Arduino/sketch/libraries/FastLED/src/FastLED.h:241:55: error: 'CLOCK_PIN' was not declared in this scope 241 | case LPD6803: { static LPD6803Controller<DATA_PIN, CLOCK_PIN> c; return addLeds(&c, data, nLedsOrOffset, nLedsIfOffset); }

but i will try 5 for a change.

[edit: no change...]

qawsed55 commented 1 year ago

error disappeared. but now other errors remain try one time more, but frob begining. If it work and there was no changes - it would work! Try author code to make compiling. You need to understand how to setup Platformio. When it would be ok - make changes to code. When I not understand what Platformio is - for me was as like hell. It compilling all setups (basic, fib and others. Then I can set it up, and it become ok. Sorry for pore English. If code work at all users - trouble on your side )

kevinl7778 commented 9 months ago

Does the fastled code still use this line?

define FASTLED_ESP8266_NODEMCU_PIN_ORDER