Так и не узнал Ваш способ. Я пользуюсь иногда таким "велосипедом на квадратных соломенных колесах" - #define OUT_PORT16(PORT, VALUE) (*(int*)26 = VALUE, PORT ## H = *(char*)27, PORT ## L = *(char*)26)
Может он и не очень привлекательно выглядит, но работает и дает нормальный код. Буду рад посмотреть альтернативу, как "обращтиться точно так же, как и к обычным - чтоб компилятор разобрался." Может и в самом деле CodeWizardAVR может помочь?