Бьерн объясняет, почему const может идти либо до, либо после типа.
http://www.stroustrup.com/bs_faq2.html#constplacement
"const T" and "T const" were - and are - (both) allowed and equivalent. [...]
Почему? Когда я изобрел «const» (первоначально названный «только для чтения» и соответствующий «только для записи»), я разрешил ему идти до или после типа, потому что я мог сделать это без двусмысленности.
Моя немедленная мысль была: «Хорошо, это имеет смысл, но если причина в этом, то почему const особенный?» Видимо это не так. И clang, и gcc не выдают предупреждений о следующем.
int volatile myint;
int static myotherint;
Имеет смысл, что это было бы допустимо, но я никогда не видел, чтобы этот синтаксис использовался или даже упоминался как возможность. Размещаются ли квалификаторы static и volatile после допустимого типа C++?
Как это определить из текста Стандарта?