OP nie pytał jakie mogą być skutki zapisu poza zaalokowaną pamięć, tylko dlaczego zapis poza nią nie wywalał programu. Tak, jest spora szansa, że tam będzie nasza inna pamięć, jest szansa, ze będzie próżnia, jest też szansa, że będzie pamięć innego procesu. I tylko ostatni przypadek wysadzi program od razu (jak system wspiera oddzielne przestrzenie adresowe dla procesów, co przy np mikrokontrolerach nie zawsze jest), reszta spowoduje ciężkie do znalezienia bugi.
Możesz rozwinąć jakie zaskakujące UB zrobi kompilator gdy każesz mu pisać poza zaalokowaną pamięcią? Bo jak dla mnie to, to co zrobi sam kompilator jest jak najbardziej zdefiniowane - po prostu skompilowany program będzie próbować zapisywać pod żądany adres. Chyba, że jest jakaś magia o której nie wiem?