>ANSI C.. assigning a value to a 'const' is implementation defined…
In both C and C++ this is definitely prohibited. What is implementation
defined is whether the const actually exist is any real storage or whether
it may be placed in ROM for either C or C++. Nothwithstanding that there
are other differences but generally they don't interfere with programming
per se.
If it is used in such a context, it _will_ have storage defined. The
compiler has the option of not generating storage only if it is never
needed for anything.