Re[5]: При портировании кода на линукс столкнулся с проблемо
От: watchmaker  
Дата: 09.08.19 12:28
Оценка:
Здравствуйте, sergii.p, Вы писали:


SP> передав ссылку и наперёд зная, что там va_arg?

И?
Это не запрещено и может быть использовано правильно (с gcc): https://godbolt.org/z/0aolWi — никаких проблем. Если передаётся по ссылке, то и читается по ссылке, а если передаётся по значению (после удаления конструкторов), то и читается по значению.

SP>то есть получается gcc целенаправленно загнал себя в UB, передав ссылку и наперёд зная, что там va_arg? Как же тут говорить о правоте компилятора?

Нет. У gcc всё хорошо. Проблема в исходном коде автора темы.
Тут ситуация аналогична, например, коду printf("%s", 42);. В чём тут винить компилятор?
Отредактировано 09.08.2019 12:42 watchmaker . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.