aboutsummaryrefslogtreecommitdiff
path: root/libgo
diff options
context:
space:
mode:
authorLuc Grosheintz <luc.grosheintz@gmail.com>2025-09-04 14:20:28 +0200
committerTomasz Kamiński <tkaminsk@redhat.com>2025-09-08 09:38:53 +0200
commitc440b585ba374b6348ef223e4891a717a1f6660c (patch)
tree3ad8da30efbb30d17276f54ca2d95fc21ddb27bb /libgo
parent565d9a3617fcc167f190e04445a1d7952b4d9bba (diff)
downloadgcc-c440b585ba374b6348ef223e4891a717a1f6660c.zip
gcc-c440b585ba374b6348ef223e4891a717a1f6660c.tar.gz
gcc-c440b585ba374b6348ef223e4891a717a1f6660c.tar.bz2
libstdc++: Implement constant_wrapper, cw from P2781R9.
This is a partial implementation of P2781R9. It adds std::cw and std::constant_wrapper, but doesn't modify __integral_constant_like for span/mdspan. libstdc++-v3/ChangeLog: * include/bits/version.def (constant_wrapper): Add. * include/bits/version.h: Regenerate. * include/std/type_traits (_CwFixedValue): New class. (_IndexSequence): New struct. (_BuildIndexSequence): New struct. (_ConstExprParam): New concept. (_CwOperators): New struct. (constant_wrapper): New struct. (cw): New global constant. * src/c++23/std.cc.in (constant_wrapper): Add. (cw): Add. * testsuite/20_util/constant_wrapper/adl.cc: New test. * testsuite/20_util/constant_wrapper/ex.cc: New test. * testsuite/20_util/constant_wrapper/generic.cc: New test. * testsuite/20_util/constant_wrapper/instantiate.cc: New test. * testsuite/20_util/constant_wrapper/op_comma_neg.cc: New test. * testsuite/20_util/constant_wrapper/version.cc: New test. Reviewed-by: Jonathan Wakely <jwakely@redhat.com> Co-authored-by: Tomasz Kamiński <tkaminsk@redhat.com> Signed-off-by: Luc Grosheintz <luc.grosheintz@gmail.com> Signed-off-by: Tomasz Kamiński <tkaminsk@redhat.com>
Diffstat (limited to 'libgo')
0 files changed, 0 insertions, 0 deletions