та же самая фигня, как в случае когда у тебя вот в коде есть ассерты, но они у тебя работают только в дебаг-сборке программы. соответственно в дебаге у тебя в случае нарушения инварианта, который ассерт проверяет, будет понятное поведение (скажем исключение выскочит), а вот в релизе у тебя будет UB. Но UB не уровня языка, а твоей логики программы.