This seems... odd. Structs with destructors are allowed, but enums aren't?