Я создаю приложение, которое должно компилироваться как в Windows, так и в Linux. Приложение написано на C, почти все работает, за исключением того, что компилятор MinGW отказывается от этого
typedef struct somestruct{
...snip...
enum {NODE, REAL} type;
};
somestruct* something;
switch (something->type){
case NODE:
...stuff...;
break;
case REAL:
...otherstuff...;
break;
}
В нем говорится, что НОД и РЕАЛ не определены,
Но если я предоставлю разрешение области действия
case somestruct::NODE
Это компилируется с MinGW 3.4.1, но не компилируется с gcc 4.1.2 в linux. Это просто проблема компилятора, которую нужно решить с помощью препроцессоров, или есть какое-то другое объяснение?