diff options
author | Aaron Jacobs <jacobsa@google.com> | 2022-05-27 09:23:19 (GMT) |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2022-05-27 09:23:49 (GMT) |
commit | 28356773cbc429eb9d62ab0bf311c9979fa301fd (patch) | |
tree | 268350a9ab9955ce874f4c04471ab13e7cae3bef /LICENSE | |
parent | 56246cdb94de94f7f43c9df59635db92c41d4064 (diff) | |
download | googletest-28356773cbc429eb9d62ab0bf311c9979fa301fd.zip googletest-28356773cbc429eb9d62ab0bf311c9979fa301fd.tar.gz googletest-28356773cbc429eb9d62ab0bf311c9979fa301fd.tar.bz2 |
gmock-actions: properly support non-moveable results in `is_callable_r`.
Previously this excluded callables that return non-moveable types. This is the
same as the
[libc++ std::is_invocable_r bug](https://github.com/llvm/llvm-project/issues/55346)
fixed by
[this commit](https://github.com/llvm/llvm-project/commit/c3a24882903d): it's
wrong to use std::is_convertible for checking the return type, since (despite
its name) that doesn't check the standard-defined notion of "implicitly
convertible". Instead we must base the check on whether the source type can be
used as an argument to a function that accepts the destination type.
PiperOrigin-RevId: 451341205
Change-Id: I2530051312a0361ea7a2ce26993ae973c9242089
Diffstat (limited to 'LICENSE')
0 files changed, 0 insertions, 0 deletions