MHDfo:
In the PROGMEM documentation we can read :
PROGMEM keyword is a variable modifier, it should be used only with the datatypes defined in pgmspace.h.
Well that is strange advice. You can store anything in program memory:
#include <avr/pgmspace.h>
struct something_t
{
int a;
int b;
long c;
};
const something_t PROGMEM something_in_flash = { 1,2,3 } ;