Hi,

I just found out the hard way, that the allocation of prog_mem variables is not location independend.

So, if you alloc a variable outside of a function, e.g. in the "standard" top area of your c-file, everything is working as expected.
But if you declare it inside a function, it does not work (as expected).

Working Example:
--
const prog_mem char teststring[]= "Teststring";

void * test(void) {
   fprintf_P(uart, teststring);
}
--

Non-Working Example (but compiling fine):
--
void * test(void) {
   const prog_mem char teststring[]= "Teststring";
   fprintf_P(uart, teststring);
}
--

Is this the intended behaviour?
What cause is here the trigger?

TIA
Marc


_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to