We use negative numbers for the compiler, and leave the possitive numbers to match the Microsoft numbers: -1 An Primary Expression was parsed, when a Type was expected. This happens because my parser knowledge is limited, and I am not good at writing grammars. It is still an error, but if I were smarter, I would have found a Bison/Yacc way of handling it. -2 Internal error, an interface is being defined inside an interface (This should never happen). -3 Constant type is not one of sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, decimal, bool, string, enum or null type. -5 A search for a name on a Type returned matches that contain methods and non-methods. They have the same name, and I do not know how this is possible to begin with. -6 Generic internal compiler error. -7 Internal compiler error/library error: no default constructor for a built-in type. Ie, decimal (int 32) -8 User-defined conversion cannot convert from or to object type. -9 User-defined conversion cannot convert from or to an interface type. -10 User-defined conversion cannot convert between types that derive from each other.