[Bug libstdc++/109024] New: [C++23][ranges][repeat_view] The default ctor unuseable
yronglin777 at gmail dot com
gcc-bugzilla@gcc.gnu.org
Sat Mar 4 16:03:30 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109024
Bug ID: 109024
Summary: [C++23][ranges][repeat_view] The default ctor
unuseable
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: yronglin777 at gmail dot com
Target Milestone: ---
The default ctor of std::ranges::repeat_view<int> was unuseable.
https://godbolt.org/z/jxKMxEn7E
[P2474R2] https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2474r2.html
```
repeat_view() requires default_initializable<W> = default;
```
```
#include <ranges>
#include <cassert>
void fn() {
std::ranges::repeat_view<int> v;
}
```
```
In file included from <source>:1:
/opt/compiler-explorer/gcc-trunk-20230304/include/c++/13.0.1/ranges: In
instantiation of 'constexpr std::ranges::repeat_view<_Tp,
_Bound>::repeat_view() requires default_initializable<_Tp> [with _Tp = int;
_Bound = std::unreachable_sentinel_t]':
<source>:5:35: required from here
/opt/compiler-explorer/gcc-trunk-20230304/include/c++/13.0.1/ranges:7395:37:
error: could not convert '0' from 'int' to 'std::ranges::__detail::__box<int>'
7395 | __detail::__box<_Tp> _M_value = _Tp();
| ^~~~~
| |
| int
Compiler returned: 1
```
More information about the Gcc-bugs
mailing list