Hah... I have got it to replicate the warning ... WITH verbose turned on.
That AND other warnings that are normally hidden!
/home/matt/arduino-1.0.1/hardware/arduino/cores/arduino/Tone.cpp:108: warning: only initialized variables can be placed into program memory area
/home/matt/arduino-1.0.1/hardware/arduino/cores/arduino/HardwareSerial.cpp: In function ‘void store_char(unsigned char, ring_buffer*)’:
/home/matt/arduino-1.0.1/hardware/arduino/cores/arduino/HardwareSerial.cpp:82: warning: comparison between signed and unsigned integer expressions
/home/matt/arduino-1.0.1/hardware/arduino/cores/arduino/HardwareSerial.cpp: In member function ‘virtual size_t HardwareSerial::write(uint8_t)’:
/home/matt/arduino-1.0.1/hardware/arduino/cores/arduino/HardwareSerial.cpp:390: warning: comparison between signed and unsigned integer expressions
/home/matt/arduino-1.0.1/hardware/arduino/cores/arduino/Print.cpp: In member function ‘size_t Print::print(const __FlashStringHelper*)’:
/home/matt/arduino-1.0.1/hardware/arduino/cores/arduino/Print.cpp:44: warning: ‘__progmem__’ attribute ignored
Messy. Very messy. Some of those warnings should be heeded - especially the comparison between unsigned and signed ones. And they are things that the Arduino maintainers should be actively fixing - not just sweeping under the carpet with hiding the output by default.
I always do my proper compiling with -Wall turned on, and strive to get ZERO warnings.
As for the progmem one, it can probably be ignored, but who knows with the Arduino...