Что должно произойти при повторном освобождении памяти?
/* C */
int *p = (int *)malloc(size);
free(p);
free(p);
// C++
int *p = new int[size];
delete[] p;
delete[] p;
Код должен заведомо упасть или это зависит от компилятора?
Источник: Stack Overflow на русском