float Var1 = 55.6; //объявляем
#define Var2 Var1; //переопределяем
Var1 = 23.6; //это присвоение работает
Var2 = 45.8; //на эту строку компилятор пишет следующее error: parse error before '=' token
то есть Var 2 считается константой
Цитата(beer_warrior @ Dec 13 2005, 11:41)

В gcc можно задать стандарт компиляции c89/c99/gnu89/gnu99.
Посмотри различия в стандартах.
А самый простой выход, конечно именованый union.
Ни с одним из ключей c89/c99/gnu89/gnu99 ссылки и анонимные объединения не работают...Полччается что же, WinAvr на работает по стандарту С++?