diff options
Diffstat (limited to 'compilerplugins')
-rw-r--r-- | compilerplugins/clang/passstuffbyref.cxx | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/compilerplugins/clang/passstuffbyref.cxx b/compilerplugins/clang/passstuffbyref.cxx index 1fd14619b62f..cff1e781455c 100644 --- a/compilerplugins/clang/passstuffbyref.cxx +++ b/compilerplugins/clang/passstuffbyref.cxx @@ -271,6 +271,18 @@ void PassStuffByRef::checkReturnValue(const FunctionDecl * functionDecl, const C .GlobalNamespace()) { return; } + // hides a constructor + if (dc.Function("createNonOwningCopy").Class("SortedAutoCompleteStrings").Namespace("editeng") + .GlobalNamespace()) { + return; + } + // template function + if (dc.Function("convertItems").Class("ValueParser").Namespace("configmgr").GlobalNamespace() + || dc.Function("parseListValue").AnonymousNamespace().Namespace("configmgr").GlobalNamespace() + || dc.Function("parseSingleValue").AnonymousNamespace().Namespace("configmgr").GlobalNamespace() + || dc.Function("Create").Class("HandlerComponentBase").Namespace("pcr").GlobalNamespace()) { + return; + } if (startswith(type.getAsString(), "struct o3tl::strong_int")) { return; } |