Dear Florijan,
I'm won't pretend to be an expert on the subtities of C constants but I think that a 'definitiion' of a constant array without an initialisation is treated differently to one with. It's treated as a declaration rather than a definition. You are free to define the array in another location - the const qualifier on the declaration appears to be ignored for placement.
If I declare an _initialised_ constant array:
const unsigned char dummy[5] = {1};
it ends up in the ROM area.
However,
const unsigned char dummy[5];
ends up in RAM.
So - either initialise the array or use the @notation to place the array in Flash.
const unsigned char myData[10]@0x1000;
bye
PS. Above tested with CW v6.2.2?
Message Edited by pgo on 2009-06-28 11:19 AM