Godot version:
3.0.2 stable
OS/device including version:
MacBook Air (13-inch, Early 2014) (1,4 GHz Intel Core i5)
MacOS High Sierra 10.13.3
Issue description:
Enums can be named like this:
enum ON { THE_FLOOR, THE_TABLE, THE_ROOF }
enum STATE { ON, OFF, UNCERTAIN }
So it would make sense to use an enum value like this:
ON.THE_TABLE
But in this case, Godot gives an error:

The ON being recognized is not the ON enum, but the ON value inside STATE.
Steps to reproduce:
extends Node
enum ON { THE_FLOOR, THE_TABLE, THE_ROOF }
enum STATE { ON, OFF, UNCERTAIN }
func _ready():
print(ON.THE_TABLE)
Minimal reproduction project:
This is probably for the same reason as #22293.
@vnen IMO we should force enums to be called as EnumName.EnumValue and drop the support for automatically registering EnumValue as a global constant. It makes enums quite hard to use and -- judging by the number of issues raised since stronger checks were added with typed GDScript -- unintuitive.
Most helpful comment
This is probably for the same reason as #22293.
@vnen IMO we should force enums to be called as
EnumName.EnumValueand drop the support for automatically registeringEnumValueas a global constant. It makes enums quite hard to use and -- judging by the number of issues raised since stronger checks were added with typed GDScript -- unintuitive.