>>614
後者では型が修飾されているんじゃなくて変数が const 修飾されている
ということを言いたかったんじゃない?実際

int * a;
int * const b = hoge();
a = b;

はちゃんと通るし。
まあたしかに「同じ型」だと言っていいのかはよくわかんないけど。