>> From the error that I'm getting, below, I belive that __data_load_end >> is only 16 bits wide? > > No, obviously it's wider: > > 0x0003c370 __data_load_start = LOADADDR (.data) > 0x0003c378 __data_load_end = (__data_load_start + SIZEOF (.data)) > > (That's from a map file.)
My map files has: 0x0000ff22 __data_load_start = LOADADDR (.data) 0x0000ffc0 __data_load_end = (__data_load_start + SIZEOF (.data)) I'm not seeing how to deduce any particular width out of either of those examples? > Note that the linker has no notion of what C knows as a "type". It > only has symbols. I'll dig out the linker manual and read up on this section. > unless resorting straight to assembly: > > static inline uint32_t get_data_load_end(void) ... Thank you. _______________________________________________ AVR-libc-dev mailing list AVR-libc-dev@nongnu.org http://lists.nongnu.org/mailman/listinfo/avr-libc-dev