Por que recebo o erro "type has no typeinfo" com um tipo enum
Eu declarei o seguinte tipo de enum no qual eu quero que o primeiro membro tenha o valor ordinal de 1 (um) ao invés do usual 0 (zero):
type
TMyEnum = (
meFirstValue = 1,
meSecondValue,
meThirdValue
);
Se eu ligarTypeInfo (), por exemplo. como parte de uma chamada paraGetEnumName (), Recebo um erro do compilador:
GetEnumName(TypeInfo(TMyEnum), Ord(aValue));
ERRO: "E2134: Tipo 'TMyEnum' não possui digitação"
Por que é isso?
Eu sei que as classes só tem typeinfo se eles são compilados com o$ M opção de compilador habilitada ou (derivar de alguma classe que foi, comoTPersistente) mas eu não achei que houvesse condições especiais para ter typeinfo para tipos enum.