// OK const int a = 1; enum class A { x = a }; enum class B { x = 1 }; // Disallowed enum class C { x = 0.5 }; enum class D { x = float(1) }; enum class E { x = 1.0 }; uniform float f; enum class F { x = f }; const float g = 1.0; enum class G { x = g }; uniform int h; enum class H { x = h };