summaryrefslogtreecommitdiff
path: root/compilerplugins
AgeCommit message (Collapse)Author
2017-12-26loplugin:passstuffbyref improved return in canvas and svtoolsNoel Grandin
and for now, ignore methods with params so we don't fall into the trap of thinking that calls to methods like: Bar& foo(Bar &p) { return p; } can be converted from Bar f() { return foo(Bar()); } to Bar const & f() { return foo(Bar()); } Change-Id: Ia3795eb2baf353cb6bec4ebf40451f2789d66ad7 Reviewed-on: https://gerrit.libreoffice.org/47034 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-24loplugin:passstuffbyref even more return improvementsNoel Grandin
Change-Id: I2a752025cd429e4d271626402dce5d8a8b0c76d2 Reviewed-on: https://gerrit.libreoffice.org/47021 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-24Fix compilerplugins/clang/test/passstuffbyref.cxxStephan Bergmann
...after 2a1fb4401da16f6a18c0bd05fe4b460a3048f9b5 "loplugin:passstuffbyref improved returns", where compiling as C++17 causes a false positive for S2::set1, whose return statement consists of > `-ReturnStmt 0x9ef8d78 <col:23, col:44> > `-ExprWithCleanups 0x9ef8d60 <col:30, col:44> 'class rtl::OUString' > `-CXXFunctionalCastExpr 0x9ef8d38 <col:30, col:44> 'class rtl::OUString' functional cast to class rtl::OUString <ConstructorConversion> > `-CXXBindTemporaryExpr 0x9ef8d18 <col:30, col:44> 'class rtl::OUString' (CXXTemporary 0x9ef8d10) > `-CXXConstructExpr 0x9ef8cd0 <col:30, col:44> 'class rtl::OUString' 'void (char const &[4], typename libreoffice_internal::ConstCharArrayDetector<char const[4], libreoffice_internal::Dummy>::Type)' > |-StringLiteral 0x9ef7160 <col:39> 'const char [4]' lvalue "xxx" > `-CXXDefaultArgExpr 0x9ef8cb0 <<invalid sloc>> 'libreoffice_internal::Dummy':'struct rtl::libreoffice_internal::Dummy' Change-Id: I7b9de7ce6b5604c7d686c8a4a7034019cd1d75c4 Reviewed-on: https://gerrit.libreoffice.org/47029 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-23loplugin:passstuffbyref improved returnsNoel Grandin
improve the detection of stuff we can return by const &, instead of by copying Change-Id: I479ae89d0413125a8295cc3cddbc0017ed61ed69 Reviewed-on: https://gerrit.libreoffice.org/46915 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-21Allow compiler plugins for onlinePranav Kant
Change-Id: I8e45936ef5675d531be71496e8894b90eaf2f6e2 Reviewed-on: https://gerrit.libreoffice.org/46769 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: pranavk <pranavk@collabora.co.uk>
2017-12-21new loplugin: convertlongNoel Grandin
merge the droplong and convertuintptr into one new plugin. Limit the analysis to looking at var decl's, since that seems to be safest proposition, even if that too needs some careful analysis. Change-Id: Id005baaf05cfb157ce44a06a1c81f08559a07d1f Reviewed-on: https://gerrit.libreoffice.org/46851 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-20Fix for compilerplugins/clang/test/salcall.cxx with clang-clStephan Bergmann
Change-Id: I6e58b6bf0d10297ed3ac20de25c1eea42c9f2334 Reviewed-on: https://gerrit.libreoffice.org/46844 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-20Remove redundant, duplicated getSpellingLoc callStephan Bergmann
Change-Id: Ic1e4fd2833dd0bcc64363733e7794448b2d4de37 Reviewed-on: https://gerrit.libreoffice.org/46839 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-19Bump --enable-compiler-plugins to Clang 3.8.0Stephan Bergmann
<https://lists.freedesktop.org/archives/libreoffice/2017-December/079107.html> "Clang baseline bump" Change-Id: I18fca8794ea34118fc6308458064d0c28cf5caf7 Reviewed-on: https://gerrit.libreoffice.org/46557 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-19remove unused typedefsNoel Grandin
Change-Id: I6fd7a9fed3a80c91a3766fceefd43c5db0aa5275 Reviewed-on: https://gerrit.libreoffice.org/46763 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-19loplugin:unusedfieldsNoel Grandin
Change-Id: I84a7bcb891548416f0e1f1b20059f9b20c890d4c Reviewed-on: https://gerrit.libreoffice.org/46686 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-19loplugin:singevalfieldsNoel Grandin
Change-Id: I28c9e436b9d434ce59394ee195ea39815ae49028 Reviewed-on: https://gerrit.libreoffice.org/46685 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-19loplugin:unusedenumconstantsNoel Grandin
Change-Id: I9dc4b369872a7c6c076ae9be1dcdf2f8385af8a7 Reviewed-on: https://gerrit.libreoffice.org/46684 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-18loplugin:unnecessaryvirtualNoel Grandin
Change-Id: Icf42fdd40a2cf6cda82254f81a7e389c7bac8558 Reviewed-on: https://gerrit.libreoffice.org/46683 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-15Enable C++17 for clang-cl, tooStephan Bergmann
Similar to libc++ in C++17 mode, some types like std::auto_ptr are indeed removed in C++17 mode by default, and need _HAS_AUTO_PTR_ETC=1 to be enabled (see <https://blogs.msdn.microsoft.com/vcblog/2017/12/08/c17-feature-removals- and-deprecations/>). Unlike libc++, also std::binary_function and std::unary_function are removed (and need the same _HAS_AUTO_PTR_ETC=1 to enable). So either set that flag to make external code build, or use patches (for external/mdds) to make externals' files included in LO proper still work there. Change-Id: I886cc0de8196255334ee03ec48cb4bc54d460afd Reviewed-on: https://gerrit.libreoffice.org/46514 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-15Try even harder to get at template args in loplugin:implicitboolconversionStephan Bergmann
After f82dc45bdb9e930878447015291c5b90c9325b57 "Use the canonical TemplateDecl", builds on macOS (at least those using C++17 and recent trunk libc++) started to emit false warnings for that std::pair< Reference<XConnection>,sal_Bool> aRet; aRet.second = false; code in dbaccess/source/ui/dlg/DbAdminImpl.cxx. There's a declaration of std::pair in type_traits and a definition in utility, and for some reason the declaration in type_traits was deemed the canonical one, while the SubstTemplateTypeParmType pointed at the definition in utility. So just check both, the original and the canonical TemplateDecl. Change-Id: I2fb9d5172c031e6ad4989b215f19d11a4b17f743 Reviewed-on: https://gerrit.libreoffice.org/46474 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-15loplugin:unusedindex fix false+ in nested loopsNoel Grandin
Change-Id: I31acbf104e49a4d1f077817a68d0b116fd2e0a30
2017-12-15once off loplugin: unusedindexNoel Grandin
Change-Id: Ifdf5da1f014c4f130eafed475c6781c029d54f1d
2017-12-14No need to keep these whitelisted functions decorated with SAL_CALLStephan Bergmann
The only effect SAL_CALL effectively has on LO-internal code is to change non- static member functions from __thiscall to __cdecl in MSVC (where all other functions are __cdecl by default, anyway). (For 3rd-party code, it could be argued that SAL_CALL is useful on function declarations in the URE stable interface other than non-static member functions, too, in case 3rd-party code uses a compiler switch to change the default calling convention to something other than __cdecl. But loplugin:salcall exempts the URE stable interface, anyway.) One could argue that SAL_CALL, even if today it effectively only affects non- static member functions in MSVC, could be extended in the future to affect more functions on more platforms. However, the current code would already not support that. For example, 3af500580b1c82eabd60335c9ebc458a3f68850c "loplugin:salcall fix functions" changed FrameControl_createInstance in UnoControls/source/base/registercontrols.cxx to no longer be SAL_CALL, even though its address (in ctl_component_getFacrory, in the same file) is passed to cppuhelper::createSingleFactory as an argument of type cppu::ComponentInstantiation, which is a pointer to SAL_CALL function. Change-Id: I3acbf7314a3d7868ed70e35bb5c47bc11a0b7ff6 Reviewed-on: https://gerrit.libreoffice.org/46436 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-13Improve loplugin:salcall error reportingStephan Bergmann
Change-Id: Ib18f61f10225d5499f94144c8a0f9efff40e43aa Reviewed-on: https://gerrit.libreoffice.org/46366 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-13Make loplugin:salcall look into macros tooStephan Bergmann
"Indirect" calls to isSallCallFunction (for canonic and overridden FunctionDecls) already needed to handle many cases of FunctionDecls spanning macros, so it isn't that much more work to make that also work for cases called directly from VisitFunctionDecl. Change-Id: I529f148c8872b86aa1ef082c6cb73db8ab1866e7 Reviewed-on: https://gerrit.libreoffice.org/46367 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-11loplugin:salcall fix functionsNoel Grandin
since cdecl is the default calling convention on Windows for such functions, the annotation is redundant. Change-Id: I1a85fa27e5ac65ce0e04a19bde74c90800ffaa2d Reviewed-on: https://gerrit.libreoffice.org/46164 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-11Improve loplugin:salcall error reportingStephan Bergmann
Change-Id: I214052491e90eb4147bf79d6fd3927266638c686 Reviewed-on: https://gerrit.libreoffice.org/46203 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-10Fix isSalCallFunction furtherStephan Bergmann
...after a31267be1bb42e8a5f80a3b660bbf969eeb5b647 "Fix isSalCallFunction so it also works on Windows", so that it actually does work on Windows. Change-Id: I0218fb41b3e1000e2325967a18dfaafaa95fe415 Reviewed-on: https://gerrit.libreoffice.org/46193 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-10Fix typosAndrea Gelmini
Change-Id: I2de8448564c963d3361a828bb96dcdb15eddf717 Reviewed-on: https://gerrit.libreoffice.org/46151 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-12-09Add some debug checks to loplugin:salcallStephan Bergmann
Change-Id: I27b7281723dd705e4304958458be3ea2fee7f3e6 Reviewed-on: https://gerrit.libreoffice.org/46112 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-09No more issues with these source filesStephan Bergmann
...after a31267be1bb42e8a5f80a3b660bbf969eeb5b647 "Fix isSalCallFunction so it also works on Windows" Change-Id: Ic770230f2dd6183f5937801f27e929ebfd39bb4a Reviewed-on: https://gerrit.libreoffice.org/46111 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-08New --enable-compiler-plugins=debug modeStephan Bergmann
...to enable debug-only code in the plugins. Some situations in the plugin code should never happen, yet must not by default report errors or trigger assertions, as some newly written LO code could trigger them nevertheless (in which case the plugin code will likely need to be adapted, to cater for these presumed-impossible situations). Such code can now be included in the plugins behind an if(isDebugMode()) guard, and can explicitly be enabled with --enable-compiler-plugins=debug. I deliberately made this a runtime rather than a compile time option (using some #ifdef guards in the plugin code, say), as it IMO keeps the code more readable, and also allows overridding COMPILER_PLUGINS_DEBUG=... on the make command line. Change-Id: Iea4f0c2783ad968a0de097fa710b3be1a248de73 Reviewed-on: https://gerrit.libreoffice.org/46096 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-08Fix isSalCallFunction so it also works on WindowsStephan Bergmann
...where FunctionDecl::getReturnTypeSourceRange returns an invalid range because it fails to take AttributedTypeLoc (as caused by SAL_CALL -> __cdecl) into account. Change-Id: I7835dfca7b890ba1bfdb99adaad78a627b6e0e17 Reviewed-on: https://gerrit.libreoffice.org/45909 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-07loplugin:salcall handle static methodsNoel Grandin
Change-Id: Id6820abec4b8ca8bee26d62b333fd30b42a14aec Reviewed-on: https://gerrit.libreoffice.org/46007 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-06Better heuristic to only look through implicit copy/move ctorsStephan Bergmann
At least recent libc++ has a std::string ctor overload without a (defaulted) Allocator argument (which otherwise causes creation of a temporary Allocator object and thus a ExprWithCleanups), so in C++17 mode (i.e., with no implicit move CXXConstructExpr -> MaterializeTemporaryExpr -> CXXBindTemporaryExpr chain in the way) CellInfo::toString (sw/source/filter/ww8/WW8TableInfo.cxx) has a ReturnStmt of just > ReturnStmt > `-ImplicitCastExpr 'std::string':'class std::__1::basic_string<char>' <ConstructorConversion> > `-CXXConstructExpr 'std::string':'class std::__1::basic_string<char>' 'void (const char *)' > `-ImplicitCastExpr 'const char *' <NoOp> > `-ImplicitCastExpr 'char *' <ArrayToPointerDecay> > `-DeclRefExpr 'char [256]' lvalue Var 'sBuffer' 'char [256]' that erroneously triggered loplugin:passstuffbyref. Change-Id: I53c8911cb1356560692c003808280a103c399e25 Reviewed-on: https://gerrit.libreoffice.org/45916 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-06loplugin:salcall handle virtual methodsNoel Grandin
Change-Id: Iab95db31188ea2914a46d63a7ebef3d825e6ec42 Reviewed-on: https://gerrit.libreoffice.org/45851 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-06Work around latest Boost 1.65.1 still using deprecated std::auto_ptrStephan Bergmann
...in various places, which is gone by default at least from recent libc++ in C++17 mode. So bring it back there for now, until Boost is fixed. Change-Id: I0b3128d114ab2b5693a84bdc7d2b9b9b9b5c3c76 Reviewed-on: https://gerrit.libreoffice.org/45910 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-06Remove CXXFLAGS_CXX11 from Clang plugin compilationStephan Bergmann
CXXFLAGS_CXX11 is for the compiler used to compile LO proper. The plugin needs to be compiled in a way compatible with compiling Clang, and the compiler and any relevant flags can be controlled with COMPILER_PLUGINS_CXX. (And at least on macOS when compiling LO against a locally-built recent Clang trunk, CXXFLAGS_CXX11 will now contain -std=gnu++17, but COMPILER_PLUGINS_CXX can still point at Apple's Xcode clang++, which does not understand -std=gnu++17.) Also, if COMPILER_PLUGINS_CXX is not set, simply default it to g++ instead of trying to construct an acceptable CLANGCXX value from CXX (which would be Clang). (The problem with using Clang without CXXFLAGS_CXX11 is that Clang, unlike GCC, typically defaults to C++03, but building compilerplugins requires C++11 at least. That would cause e.g. the Gerrit/Jenkins linux_clang_dbgutil_64 builds to fail---but which also needs COMPILER_PLUGINS_CXX to be explicitly set to "g++ -std=c++11" as GCC on those machines is still 4.8.5 defaulting to C++03.) Change-Id: Id4ee4e54fa871cb6e621069cd050ae5b31922b34 Reviewed-on: https://gerrit.libreoffice.org/45856 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-05Replace deprecated std::mem_fun et al in reportdesignStephan Bergmann
(as std::mem_fun is gone by default at least from recent libc++ in C++17 mode) Change-Id: Ib66134bd4072dfe0ce3bc36aa684cee710921235 Reviewed-on: https://gerrit.libreoffice.org/45868 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-05lokdialog: Make the badstatic loplugin happy.Jan Holesovsky
Change-Id: Ic19bbd2a3533e4e600d8856e55c4e8d06f0ad752 Reviewed-on: https://gerrit.libreoffice.org/45500 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
2017-12-05fix compile of salcall pluginNoel Grandin
changes from sberg and myself crossed paths in the night Change-Id: I2606902f84739e552b2aad292e63e7b8e6757965
2017-12-05loplugin:salcall fix non-virtual methodsNoel Grandin
first, since those are safer to change than virtual methods Change-Id: Ie3b624019d75ee2b793cee33b3c5f64e994e8bfe Reviewed-on: https://gerrit.libreoffice.org/45798 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-04-Werror=unused-functionStephan Bergmann
Change-Id: I411a134daef6ad061ab54b300e379b882395905b
2017-12-04loplugin:singlevalfieldsNoel Grandin
Change-Id: I521d2efa641f3a14c48561e2e0f6d687e5807d93 Reviewed-on: https://gerrit.libreoffice.org/45662 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-04new loplugin salcall: remove unnecessary SAL_CALLNoel Grandin
In this first commit, I use the plugin to verify the consistency of our SAL_CALL annotations. The point being to make the next commit more mechanical in nature, purely using the rewriter. There are various chunks of unix-only code that have never had to be compiled by MSVC, hence the inconsistencies. In bridges, I had to inline some typedefs to make the verification code happy, since it cannot see into typedefs. Change-Id: Iec6e274bed857febf7295cfcf5e9f21fe4a34da0 Reviewed-on: https://gerrit.libreoffice.org/45502 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-01Don't prevent ODatabaseDocument refcount from dropping to zeroStephan Bergmann
...preventing the dtor from ever being called. (DocumentEvents forwards its acquire/release calls to its m_pData->rParent, i.e., the ODatabaseDocument, for better or worse.) This caused ODatabaseDocument instances to be leaked during e.g. JunitTest_dbaccess_complex. Regression introduced with de2ac128da025502c533f8cede5862e054dd9c44 "loplugin:useuniqueptr in dbaccess". Change-Id: Ida073c7e576b88e0d1d1a90253445e946e6eac99 Reviewed-on: https://gerrit.libreoffice.org/45652 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-01loplugin:unusedfieldsNoel Grandin
The mnRequestedLength fields in formula/ were introduced in commit 6ef6dd0122b8e44d8547ec31f40def42173e4e41 Author: Kohei Yoshida <kohei.yoshida@collabora.com> Date: Wed Feb 26 14:32:57 2014 -0500 Store the length of originally requested array size prior to trimming. but then partially removed in commit d7f1f91b194da1cb96e66268ce7ef38602aa5754 Author: Noel Grandin <noel@peralex.com> Date: Mon Mar 3 13:29:43 2014 +0200 remove unused code in formula/vectortoken Change-Id: Ic56b6e42682131ee45df7838867145f980f3d601 Reviewed-on: https://gerrit.libreoffice.org/45571 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-11-30loplugin:unnecessaryparen: signed numeric literalsStephan Bergmann
Change-Id: I75c8224452ca9c3711a2ccaca9ecf549fa59cb64 Reviewed-on: https://gerrit.libreoffice.org/45549 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-30Move loplugin:fpcomparison to store/Stephan Bergmann
...after bc4e8de8eea1ccebda479c8e2db2f3c6dfff60d2 "Silence new loplugin:fpcomparison for now": > Nov 30 08:33:16 <sberg> noelgrandin, thoughts on whether fpcomparison is actually worth it, seeing the loooooooong blacklist there? > Nov 30 08:34:11 <noelgrandin> sberg, that's wasn't my idea, can't remember who came up with it. vmiklos was that you? > Nov 30 08:34:36 <noelgrandin> sberg, the original commit message was "Find code that compares floating point values with == or != > Nov 30 08:34:36 <noelgrandin> It should rather use rtl::math::approxEqual" > Nov 30 08:34:45 <noelgrandin> so in theory the replacement should be fairly manual > Nov 30 08:34:48 <vmiklos> i don't think so :) > Nov 30 08:35:15 <noelgrandin> might have been moggi, but he's not around so.... just disable it > Nov 30 08:36:19 <sberg> noelgrandin, yeah, in theory; in practice, I guess there's also cases where x==1.0 is what you want exactly (given x tends not to be a computed value after all, but some literal that's being passed around) > Nov 30 08:36:33 <sberg> noelgrandin, yeah, I'll disable it then Change-Id: I35f5328efa0ec02d9be837c12efab2b03a3dae52 Reviewed-on: https://gerrit.libreoffice.org/45550 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-30Silence new loplugin:fpcomparison for nowStephan Bergmann
...introduced with ba4a124b0c0c66fd275f5147d55eeec27ce78da9 "Resolves: tdf#114117 draw page shadow mangled" Change-Id: I31573d55ae7e5ff015d4582de1d436cdc673acf1
2017-11-30loplugin:unusedmethodsNoel Grandin
Change-Id: I9188f4579900d7eec375754aa94d21ac4e8456e2 Reviewed-on: https://gerrit.libreoffice.org/45504 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-11-30some global loplugin improvementsNoel Grandin
for some reason we're hitting more template AST nodes now? Anyhow, updated singlevalfields and unusedenumconstants to cope. For unusedfields, ignore field access inside Clone() methods, since it's like a constructor. Similarly for unusedmethods. Change-Id: Icb2f76fb2f06ae5df21f9d75312e42a2800befb9 Reviewed-on: https://gerrit.libreoffice.org/45470 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-11-30Enable loplugin:unnecessaryparen for integer and Boolean literalsStephan Bergmann
...taking care not to warn about those cases that are used to silence Clang's -Wunreachable-code Change-Id: I3c1da907f51cc786f81c1322fe71d75832cd9191 Reviewed-on: https://gerrit.libreoffice.org/45521 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-29TODO: silence new loplugin:badstatics for nowStephan Bergmann
Change-Id: Ia57dd190a173f664b0c624617b13f2876008835a