c++ c++11 enums const language-lawyer

c++ - ¿Cuál es la función del especificador const en los tipos de enumeración?



c++11 enums (1)

El calificador const se ignora en la especificación de enum-base ; que solo espera que se use un tipo integral como el tipo subyacente del tipo de enumeración, especificando const (o volatile ) no tiene mucho sentido.

(énfasis mío)

dos puntos (:), seguido de un tipo-especificador-seq que nombra un tipo integral ( si está calificado por cv, se ignoran las calificaciones ) que servirá como el tipo subyacente fijo para este tipo de enumeración

De la norma, [dcl.enum]/2 :

(énfasis mío)

El type-specifier-seq de una enum-base debe nombrar un tipo integral; Cualquier cv-calificación se ignora .

enum foo : const unsigned int { F, S, T }; void func() { foo p; p = F; }

¿Lo anterior compila así que el tipo subyacente no es un tipo const?