Цитата(Nikola Kirov @ Dec 17 2006, 17:57)

#define X 5
#define Y X+1
#undef X
#define X Y
#if X != 6
#error
#endif
Это все эквивалентно:
Код
#if X+1 != 6
#error
#endif
Причем X не определен.
Естественно должно вызвать как минимум выход на #error а как максимум еще сообщение о том,что X не
определен.
Никаких "багов".