Enum typechecks as a datatype but compiles down to the represnetaion of desired integer (or integer-like) values. This is a special case of Shared Subtypes. — http://portal.acm.org/citation.cfm?id=1411297
there don't seem to be any issues for this project.