const int* p = new int[10];
delete[] p;

これ、エラーも警告も何も出ないんですけど、
仕様上合法なんですか?