diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2020-11-05 18:36:19 +0000 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2020-11-05 19:09:22 +0000 |
commit | cdd2d448d8200ed5ebcb232163954367b553291e (patch) | |
tree | 513dc26b087c5b85ce1b2d58c07134bb11cb911a /gcc | |
parent | 10508db867934264bbc2578f1f454c19fa558fd3 (diff) | |
download | gcc-cdd2d448d8200ed5ebcb232163954367b553291e.zip gcc-cdd2d448d8200ed5ebcb232163954367b553291e.tar.gz gcc-cdd2d448d8200ed5ebcb232163954367b553291e.tar.bz2 |
libstdc++: Fix constraints on std::optional comparisons [PR 96269]
The relational operators for std::optional were using the wrong types
in the declval expressions used to constrain them. Instead of using
const lvalues they were using non-const rvalues, which meant that a type
might satisfy the constraints but then give an error when the function
body was instantiated.
libstdc++-v3/ChangeLog:
PR libstdc++/96269
* include/std/optional (operator==, operator!=, operator<)
(operator>, operator<=, operator>=): Fix types used in
SFINAE constraints.
* testsuite/20_util/optional/relops/96269.cc: New test.
Diffstat (limited to 'gcc')
0 files changed, 0 insertions, 0 deletions