я еще какой-то пример видел, там типа переменная a получается в результате UB, и есть две ветки if(a == 0){v1} if(v!=0) {v2} и ни одна из веток не исполняется. :)
я еще какой-то пример видел, там типа переменная a получается в результате UB, и есть две ветки if(a == 0){v1} if(v!=0) {v2} и ни одна из веток не исполняется. :)
компилятор всегда считает что действия программы будут определенными спецификацией. если человек совершает действие которое не определено спецификацией, компилятор компилирует как буд-то этого действия нет