diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2023-05-04 15:28:35 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2023-05-05 08:05:09 +0200 |
commit | 671d1c6cd14b28b5960ad56086299bd69533dfd8 (patch) | |
tree | dbe98d608ad3c9904f2e0c72a432d9c17f819739 /compilerplugins | |
parent | 5e7327e9313e2d9fe2f0defb30d3e7dc28c0b2ce (diff) |
Adapt loplugin:unnecessarygetstr to libc++
> [CPT] compilerplugins/clang/test/unnecessarygetstr.cxx
> error: 'error' diagnostics expected but not seen:
> File compilerplugins/clang/test/unnecessarygetstr.cxx Line 119 (directive at compilerplugins/clang/test/unnecessarygetstr.cxx:118): unnecessary call to 'getStr' when passing to string constructor [loplugin:unnecessarygetstr]
because libcxx's <string> declares
> template <__enable_if_t<__is_allocator<_Allocator>::value, int> = 0>
> _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 basic_string(const _CharT* __s)
and
> template <__enable_if_t<__is_allocator<_Allocator>::value, int> = 0>
> _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 basic_string(const _CharT* __s, const _Allocator& __a)
instead of single
> basic_string(const charT* s, const Allocator& a = Allocator())
Change-Id: I8d64b140618337adfba01c02d5d02fda093628f2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151392
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'compilerplugins')
-rw-r--r-- | compilerplugins/clang/unnecessarygetstr.cxx | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compilerplugins/clang/unnecessarygetstr.cxx b/compilerplugins/clang/unnecessarygetstr.cxx index 7a9610f7618b..681070356108 100644 --- a/compilerplugins/clang/unnecessarygetstr.cxx +++ b/compilerplugins/clang/unnecessarygetstr.cxx @@ -61,7 +61,7 @@ public: auto tc = loplugin::TypeCheck(constructExpr->getType()); if (tc.ClassOrStruct("basic_string").StdNamespace()) { - if (constructExpr->getNumArgs() == 2) + if (constructExpr->getNumArgs() == 1 || constructExpr->getNumArgs() == 2) checkForGetStr(constructExpr->getArg(0), "string constructor"); } else if (tc.ClassOrStruct("basic_string_view").StdNamespace()) |