TNameOf does not work for UEnums?

I resorted to using the following workaround until UHT is adjusted to generate correct specializations for TNameOf:

// Once in a common header
#define Workaround_Expose_TNameOf(type) \
template<> \
struct TNameOf<type> \
{  \
	FORCEINLINE static TCHAR const* GetName() \
	{ \
		return TEXT(#type); \
	} \
}

// After every UEnum (replace EMyUEnumType by the enum's typename)
Workaround_Expose_TNameOf(EMyUEnumType);