Re declaration why doesn t the compiler complaints

Hi,

I was looking trough the library "pins_arduino.c"

and i saw the following redeclarations of PROGMEM consts:

const uint8_t PROGMEM digital_pin_to_port_PGM[] = {
	// PORTLIST		
	// -------------------------------------------		
	PE	, // PE 0 ** 0 ** USART0_RX	
	PE	, // PE 1 ** 1 ** USART0_TX	
	PE	, // PE 4 ** 2 ** PWM2	
	PE	, // PE 5 ** 3 ** PWM3	
	PG	, // PG 5 ** 4 ** PWM4	
....
	PK	, // PK 4 ** 66 ** A12	
	PK	, // PK 5 ** 67 ** A13	
	PK	, // PK 6 ** 68 ** A14	
	PK	, // PK 7 ** 69 ** A15	
};


....


const uint8_t PROGMEM digital_pin_to_port_PGM[] = {
	PD, /* 0 */
	PD,
	PD,
	PD,
...
	PC,
	PC,
};

....

Shouldn´t this redeclaration in the same file make the compiler complaint?

How is this possible, what is happening here?

Thanks

Did you miss this line:
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) ?

indeed i missed them 8) !