Следующее дает ошибку, как и ожидалось:
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>;
возможно.]