Hmm, In old Smaug mordecai having MAX_CLASS higher then what you actually need was actually not a good idea.
jparkin already said that MAX_CLASS is at 11 and that the classes are 0-10 (so thats correct).
Stock wise class comes before races and doesn't take into account anything to do with race, the race selection is what handles class restrictions.
A make clean is actually always necessary after you change something in a .h file just to make sure that it updates everything correctly (for future knowledge).
Well I would recheck all the numbers in the files, You also need to make sure you add in the classes in mud.h look for like
#define CLASS_NONE -1 /* For skill/spells according to guild */
#define CLASS_MAGE 0
#define CLASS_CLERIC 1
#define CLASS_THIEF 2
#define CLASS_WARRIOR 3
#define CLASS_VAMPIRE 4
#define CLASS_DRUID 5
#define CLASS_RANGER 6
#define CLASS_AUGURER 7 /* 7-7-96 SB */
#define CLASS_PALADIN 8 /* 7-7-96 SB */
#define CLASS_NEPHANDI 9
and set those accordingly to match what you set them to be in the .class files.
(This one doesn't actually matter to the showing of them but it does for other things.)
there are also some places in the old code that didn't pay actually use the CLASS_(class) things and instead used the numbers. So you will have to find those and take care of them. (Again the best thing you could do is to download and start with SmaugFUSS (latest release) ) It will actually save you alot of time fixing bugs and other stuff.)