semantic: Make enums weakly typed, restrict to integrals for now.