170 похожих чатов

Вопрос для знатоков стандарта: распространяется ли исправление https://cplusplus.github.io/LWG/issue1203 , попавшее

в C++20, на предыдущие стандарты?

Откуда возник вопрос: https://stackoverflow.com/questions/69320918/why-does-taking-istream-to-a-temporary-stringstream-works-but-not-when-tak
Кажется, что код из вопроса корректен только начиная с C++20: до C++11 у нас вообще нет мув-семантики, в C++17 там слева ещё требуется istream&&.

Но на cppreference это не так давно убрали и сказали, что поведение одинаковое аж с C++11 — это вообще законно? https://en.cppreference.com/mwiki/index.php?title=cpp/io/basic_istream/operator_gtgt2&diff=116602&oldid=106958

10 ответов

27 просмотров

А есть объяснение как временный объект stringstream биндится к не конст ссылке istream?

Egor-Suvorov Автор вопроса
Danya🔥
А есть объяснение как временный объект stringstrea...

Да. Никак. Там есть специальная перегрузка operator>> с левым rvalue-аргументом, которая перенаправляет, как раз Brian Bi на SO отвечает. И вот она то ли разная во всех стандартах, то ли, после принятия LWG1203 в 2020, стала одинаковой во всех стандартах — я вот этого не понимаю.

Egor-Suvorov Автор вопроса

Переформулирую вопрос: может ли вообще изменяться уже опубликованный стандарт? Скажем, каким-нибудь Defect Report. Или они только говорят, что надо в очередной ревизии стандарта что-то подкорректировать?

Egor Suvorov
Переформулирую вопрос: может ли вообще изменяться ...

Может, но это отдельно пишется. Например исправления std::format бэкпортируют из С++23 в С++20

Egor-Suvorov Автор вопроса
Stanislav Ershov
Может, но это отдельно пишется. Например исправлен...

Я так понял, что речь про вот это: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2216r3.html#polls А есть ли где-нибудь список таких портированных штук? Я вижу, что по опросам получилось "Strong consensus for DR against C++20", но на странице https://cplusplus.github.io/LWG/lwg-defects.html отдельного LWG не вижу

Egor Suvorov
Я так понял, что речь про вот это: http://www.open...

>Changed the following 280 issues to C++20 (from WP) я думаю, это он и есть

Egor-Suvorov Автор вопроса
Vlad
>Changed the following 280 issues to C++20 (from W...

Ну, они там явно перечислены и все на этой странице есть, у каждого свой номер вида LWG1234. Но поиск 2216 или каких-то цитат из секции "wording" P2216R2 ничего не находит.

Egor Suvorov
Ну, они там явно перечислены и все на этой страниц...

я ничего не нахожу на этот счет если это как-то поможет, то вот коммит, где эту бумагу добавили в стандарт https://github.com/cplusplus/draft/commit/cfc0da32db0c02758e2e027980fff0f12625b542

Egor-Suvorov Автор вопроса
Vlad
я ничего не нахожу на этот счет если это как-то по...

Да, в ближайший стандарт понятно. Мне интересно, как это влияет на будущие. Пока спросил на SO, надеюсь, формулировки достаточно ясные: https://stackoverflow.com/questions/69325059/was-lwg1203-more-useful-rvalue-stream-insertion-retroactively-applied-to-c11 https://stackoverflow.com/questions/69325106/is-there-a-list-of-all-changes-retroactively-applied-to-published-c-standards

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта