Open
Description
Basic Infos
- This issue complies with the issue POLICY doc.
- I have read the documentation at readthedocs and the issue is not addressed there.
- I have tested that the issue is present in current master branch (aka latest git).
- I have searched the issue tracker for a similar issue.
- If there is a stack dump, I have decoded it.
- I have filled out all fields below.
Platform
- Hardware: [ESP-8266]
- Core Version: [v3.0.2]
- Development Env: [Platformio]
- Operating System: [MacOS]
Settings in IDE
- Module: [nodemcuv2]
Problem Description
I've set a flag to compile with the latest (available) standard: -std=gnu++20
.
It works, but it produces a lot of warnings, for example:
.platformio/packages/framework-arduinoespressif8266/cores/esp8266/core_esp8266_si2c.cpp:576:33: warning: '++' expression of 'volatile'-qualified type is deprecated [-Wvolatile]
576 | twi_data = twi_txBuffer[twi_txBufferIndex++];
| ^~~~~~~~~~~~~~~~~
.platformio/packages/framework-arduinoespressif8266/cores/esp8266/core_esp8266_si2c.cpp:579:9: warning: '--' expression of 'volatile'-qualified type is deprecated [-Wvolatile]
579 | bitCount--;
| ^~~~~~~~
.platformio/packages/framework-arduinoespressif8266/cores/esp8266/core_esp8266_si2c.cpp:588:18: warning: compound assignment with 'volatile'-qualified left operand is deprecated [-Wvolatile]
588 | twi_data <<= 1;
| ~~~~~~~~~^~~~~
.platformio/packages/framework-arduinoespressif8266/cores/esp8266/core_esp8266_si2c.
They are all connected to the fact that starting with C++20, some of the volatile
operations are deprecated: https://blog.feabhas.com/2021/05/modern-embedded-c-deprecation-of-volatile/
- Is there a plan for better support of C++20?
- Are you open for PRs in this matter?
Metadata
Metadata
Assignees
Labels
No labels