arduino / reference-en

Editable source for the Arduino Reference
https://www.arduino.cc/reference/en/
Other
165 stars 732 forks source link

Will const variables always exist in program space? #967

Open Ebola-Chan-bot opened 9 months ago

Ebola-Chan-bot commented 9 months ago

Language/Variables/Utilities/PROGMEM.adoc says:

Newer boards (Due, MKR WiFi 1010, GIGA R1 WiFi etc.) automatically use the program space when a variable is declared as a const.

As far as I know, program space is not writable at runtime. However, const variables can be initialized at runtime. Is there a contradiction?

A more plausible possibility is that only constexpr is guaranteed to be placed in program space, leaving the other variables to the compiler to decide whether to optimize them into program space.