diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2021-09-23 10:16:21 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2021-09-23 12:19:55 +0200 |
commit | fdce0a04bd8b23200631e09979b3880adf754b2a (patch) | |
tree | a94da81e5b0be3a7a4e3b37bccb9c13aecbab8f7 /compilerplugins | |
parent | 6b6400d72fe4112b230ffe31b9bea7d2a7f2f9f4 (diff) |
Extend loplugin:stringviewparam to starts/endsWith
Change-Id: I4b8fb5e963e582836440587dcaa2922cb5d05bc7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122512
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'compilerplugins')
-rw-r--r-- | compilerplugins/clang/stringviewparam.cxx | 2 | ||||
-rw-r--r-- | compilerplugins/clang/test/stringviewparam.cxx | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/compilerplugins/clang/stringviewparam.cxx b/compilerplugins/clang/stringviewparam.cxx index 862e9f331133..aa0899ca10a0 100644 --- a/compilerplugins/clang/stringviewparam.cxx +++ b/compilerplugins/clang/stringviewparam.cxx @@ -168,7 +168,7 @@ DeclRefExpr const* relevantCXXMemberCallExpr(CXXMemberCallExpr const* expr) else if (auto const i = d->getIdentifier()) { auto const n = i->getName(); - if (n == "isEmpty" || n == "subView") + if (n == "endsWith" || n == "isEmpty" || n == "startsWith" || n == "subView") { good = true; } diff --git a/compilerplugins/clang/test/stringviewparam.cxx b/compilerplugins/clang/test/stringviewparam.cxx index db57c8ac415f..f5f165804490 100644 --- a/compilerplugins/clang/test/stringviewparam.cxx +++ b/compilerplugins/clang/test/stringviewparam.cxx @@ -23,7 +23,8 @@ void f1a(std::string_view); char f1b(OString const& s) { f1a(s); - if (s.isEmpty()) + OString rest; + if (s.isEmpty() || s.startsWith("foo", &rest) || s.endsWith("foo")) { f1a(std::string_view(s)); } @@ -35,7 +36,8 @@ void f2a(std::u16string_view); sal_Unicode f2b(OUString const& s) { f2a(s); - if (s.isEmpty()) + OUString rest; + if (s.isEmpty() || s.startsWith("foo", &rest) || s.endsWith("foo")) { f2a(std::u16string_view(s)); } |