diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2019-11-08 10:26:51 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2019-11-08 15:39:15 +0100 |
commit | 48ab06d962e584091f8e2771bc9863ed886fa39f (patch) | |
tree | 317bb76aeb857627bd1de5c6a9ee93959817ea90 /sc/source/ui/attrdlg | |
parent | 9b2a94321e3a05364064cb60dafc1d1b69eece56 (diff) |
Avoid C++20 comparison operator overloading ambiguities (clang-cl -std=c++2a)
The main problem was the non-explicit inprocserv::ComSmart<T>::operator T*()
that caused ambiguities between inprocserv::ComSmart<T>::operator ==(const T*)
and the built-in operator == taking two (cv-qualified) T*.
Many uses of that non-explicit conversion operator could be covered by an
explicit bool conversion operator, but some needed the introduction of a get()
function.
Also, one of the operator == was used by the C++20 overload resolution in a way
that it now needs to return bool. (And the other functions returning BOOL could
be cleaned up, too.)
Change-Id: I8065f0955a60207c2bd6d8e583d13bc15f324f38
Reviewed-on: https://gerrit.libreoffice.org/82273
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'sc/source/ui/attrdlg')
0 files changed, 0 insertions, 0 deletions