Use UEnum , namespace and enum class at the same time

UE does not support the first case?

UENUM()
namespace MyNamespace1
{//Error		Missing '{' in 'Enum'	xxxx.h	29

    enum class State
    {
        IDLE,
    };
}

UENUM()//OK
namespace MyNamespace2
{
    enum State
    {
        IDLE,
    };
}

UENUM()//OK
enum class MyState
{
    IDLE,
};

//OK
namespace MyNamespaceC
{
    enum class MyStateC
    {

    };
}

Why do you have UENUM before namespace?