tmp/tmp4w9g2awl/{from.md → to.md}
RENAMED
|
@@ -25,11 +25,11 @@ conventional semantics.
|
|
| 25 |
template<class T>
|
| 26 |
concept boolean-testable-impl = convertible_to<T, bool>; // exposition only
|
| 27 |
```
|
| 28 |
|
| 29 |
Let `e` be an expression such that `decltype((e))` is `T`. `T` models
|
| 30 |
-
`boolean-testable-impl` only if
|
| 31 |
|
| 32 |
- either `remove_cvref_t<T>` is not a class type, or a search for the
|
| 33 |
names `operator&&` and `operator||` in the scope of
|
| 34 |
`remove_cvref_t<T>` finds nothing; and
|
| 35 |
- argument-dependent lookup [[basic.lookup.argdep]] for the names
|
|
@@ -124,11 +124,11 @@ template<class T, class U>
|
|
| 124 |
|
| 125 |
Let `C` be `common_reference_t<const T&, const U&>`. Let `t1` and `t2`
|
| 126 |
be equality-preserving expressions that are lvalues of type
|
| 127 |
`remove_cvref_t<T>`, and let `u1` and `u2` be equality-preserving
|
| 128 |
expressions that are lvalues of type `remove_cvref_t<U>`. `T` and `U`
|
| 129 |
-
model `comparison-common-type-with<T, U>` only if
|
| 130 |
|
| 131 |
- `CONVERT_TO_LVALUE<C>(t1)` equals `CONVERT_TO_LVALUE<C>(t2)` if and
|
| 132 |
only if `t1` equals `t2`, and
|
| 133 |
- `CONVERT_TO_LVALUE<C>(u1)` equals `CONVERT_TO_LVALUE<C>(u2)` if and
|
| 134 |
only if `u1` equals `u2`
|
|
|
|
| 25 |
template<class T>
|
| 26 |
concept boolean-testable-impl = convertible_to<T, bool>; // exposition only
|
| 27 |
```
|
| 28 |
|
| 29 |
Let `e` be an expression such that `decltype((e))` is `T`. `T` models
|
| 30 |
+
`boolean-testable-impl` only if
|
| 31 |
|
| 32 |
- either `remove_cvref_t<T>` is not a class type, or a search for the
|
| 33 |
names `operator&&` and `operator||` in the scope of
|
| 34 |
`remove_cvref_t<T>` finds nothing; and
|
| 35 |
- argument-dependent lookup [[basic.lookup.argdep]] for the names
|
|
|
|
| 124 |
|
| 125 |
Let `C` be `common_reference_t<const T&, const U&>`. Let `t1` and `t2`
|
| 126 |
be equality-preserving expressions that are lvalues of type
|
| 127 |
`remove_cvref_t<T>`, and let `u1` and `u2` be equality-preserving
|
| 128 |
expressions that are lvalues of type `remove_cvref_t<U>`. `T` and `U`
|
| 129 |
+
model `comparison-common-type-with<T, U>` only if
|
| 130 |
|
| 131 |
- `CONVERT_TO_LVALUE<C>(t1)` equals `CONVERT_TO_LVALUE<C>(t2)` if and
|
| 132 |
only if `t1` equals `t2`, and
|
| 133 |
- `CONVERT_TO_LVALUE<C>(u1)` equals `CONVERT_TO_LVALUE<C>(u2)` if and
|
| 134 |
only if `u1` equals `u2`
|