Почему компилятор не выдает ошибку, когда указатель typedef const используется с дополнительной константой?

Следующее дает ошибку, как и ожидалось:

int* const const p = new int; // g++ error: duplicate cv-qualifier

Но ниже не дает никакой ошибки, хотя это эквивалентно приведенному выше:

typedef int* const intp_const;
intp_const const p = new int;  // ok !
        // ^^^^^ duplicate ?

Почему компилятор игнорирует дополнительный const?

[Примечание:intp_const constне то же самое, что const char* const, потому что *p = <value>;возможно.]

5
задан iammilind 18 July 2012 в 04:03
поделиться