while (!(SPSR & (1 << SPIF)));SPDR = 0xFF; \
}
так что это кучерявые языковые конструкции виноваты. будь проще.