Re[4]: C++ illegal instruction
От: · Великобритания  
Дата: 31.07.25 15:17
Оценка:
Здравствуйте, sergii.p, Вы писали:

SP>компилятор всё равно превращает

Неважно что там внутре компилятора. С т.з. исходного кода там именно return.


SP>так что есть return или нет — на работоспособность никак не влияет. Программист точно также может забыть сделать *ret = 0 во втором коде, как и в первом не вызвать return. Ошибка одного порядка.

Если не влияет, откуда тогда сабж? Как компилятор умудрился сгенерить illegal instruction и зачем?
Могу предоложить лишь ситуацию, когда код unreachable:
bool f() {
  if(inFactAlwaysTrue()) {
    return true;
  }
//never getting here, never crashing
}

вот наверное тут будет не очень хорошо с т.з. совместимости кидать ошибку компиляции.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.