'enum' : can only specify underlying type for managed enum
An enum was declared incorrectly. How this error is resolved depends on whether you are compiling with /com+.
The following sample generates C3177:
#using<mscorlib.dll> // Delete, if you are not using /com+ enum E : int { e1, e2 }; // C3177 // To resolve for /com+ // __value enum E : int { e1, e2 }; // To resolve without /com+ // enum E { e1, e2 }; void main() { }