Мне интересно узнать о следующей ситуации (которую я обнаружил в некотором коде, с которым мне нужно работать):
SomeClass *ar = new SomeClass[2];
ar++;
delete[] ar;
Этот код работает нормально, т.е. не сбой (win32, построенный на VS2005).
Является ли это "законным"? Конечно, это не так.