summaryrefslogtreecommitdiff
path: root/compilerplugins
AgeCommit message (Collapse)Author
2017-06-06getBody() can be null for a defaulted dtorStephan Bergmann
Not sure why that started to pop up only now, maybe something changed with recent Clang trunk. Change-Id: Ib6587b66afbf3e43d92c78432c0bfd61c74ba6c5
2017-06-06Avoid loplugin:unreffunStephan Bergmann
Change-Id: I75ea46f257046bb42b2bfad3a5bd4450868e0d69
2017-06-05Improved loplugin:cstylecast to reference typesStephan Bergmann
Change-Id: Ie95ab6d588cfe40cc9748ce526b80d06fe825da5
2017-06-05Improved loplugin:redundantcast, const/static_cast combinationsStephan Bergmann
Change-Id: I3b24327835cd4e1842ee6e9b87ab06efa25a4bbf
2017-06-05Reduce loplugin:redundantcast warnings about functional casts even futherStephan Bergmann
Change-Id: I8884e17c453831e048c43012ee176093c5b2f99e
2017-06-05Fix typosAndrea Gelmini
Change-Id: I9eb05432732a04e816946fbb13001df100a31f73 Reviewed-on: https://gerrit.libreoffice.org/38395 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-06-02Reduce loplugin:redundantcast warnings about functional casts even futherStephan Bergmann
Change-Id: Ieae9b5c9c7c6d9b8459e5d163f55d8f5024adfae
2017-06-02Improved loplugin:redundantcast const_cast handlingStephan Bergmann
Change-Id: I4c24ff5d9d5e74bef2a4040c6308c504282af55d
2017-06-02Reorganize testsStephan Bergmann
Change-Id: Ic3d9e55b2730a3ea01cc6c7c9fbdd80a1e653c7e
2017-06-02Make loplugin:redundantcast functional cast warnings more verboseStephan Bergmann
(useful when types involve typedefs) Change-Id: I93e8962fd4b9c4ef79990e057dfa07538380008c
2017-06-02Improved loplugin:redundantcast static_cast handlingStephan Bergmann
Change-Id: I74e4ebda40f95661c5ae344132fcabbbf08ab0a4
2017-06-01Improve suppression of loplugin:redundantcast in CPPUNIT_ASSERTStephan Bergmann
Change-Id: I65f95e7245f08592ea11cc75e1cf34dcbdf16b40
2017-06-01remove overly large loplugin result fileNoel Grandin
should not have been committed in the first place, was an accident Change-Id: Ie38cc77624bae5b3f9cc110085d0fe19b26c75c6
2017-06-01Fix typosAndrea Gelmini
Change-Id: Ic7fbd750321e4cfde1cfb0e04ffb545bb1f66d9c Reviewed-on: https://gerrit.libreoffice.org/37921 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-06-01Avoid "default initialization ... without ... default constructor" errorStephan Bergmann
Change-Id: Ic336b33bd747cd55955231cbe0b5a9d474adf3ab
2017-05-31Add some loplugin:redundantcast testsStephan Bergmann
Change-Id: I5c39a745b70655f92953ec785d01a3a52d9ec42b
2017-05-31The updated values of t1, t2 are unusedStephan Bergmann
...since f1bbda1c26dc16642038ea70288eec60b43520b6 "loplugin:cstylecast: deal with remaining pointer casts" Change-Id: Idecc702344c674e6f39051e4f8c2114017e317cb
2017-05-31DataRecursionQueue was only introduced in Clang 3.8Stephan Bergmann
(r253948 "Use data recursion in RecursiveASTVisitor when traversing Stmt and Expr nodes") Change-Id: I393474048ecbe0f6b7f19f00c2f830f495b2b6f0
2017-05-30Restrict loplugin:redundantcast to "real" castsStephan Bergmann
Change-Id: Ifc9de898e5c9a084cbfd739625c679185c3a1534
2017-05-30Traverse InitListExpr only onceStephan Bergmann
Arbitrarily chosing to traverse the semantic instead of the syntactic form. Change-Id: Id1b4e49421a5550bb2fa9f0d7e6f83bf7abb6ebb
2017-05-30Make loplugin:redundantcast accept bool(FD_ISSET(...)) againStephan Bergmann
Change-Id: I4e96c55c246cf806f17df31844a00d0e8a5e4f56
2017-05-30teach redundantcast plugin about functional castsNoel Grandin
Change-Id: Iac8ccd17d9e46ebb2cb55db7adb06c469bbd4ea0 Reviewed-on: https://gerrit.libreoffice.org/37910 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-25loplugin:constantparamNoel Grandin
add the results files so I can just see the diff in future Change-Id: Ia20a1aa6418be95ed620719cde340c00b7b053e1 Reviewed-on: https://gerrit.libreoffice.org/37988 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-24loplugin:unusedfieldsNoel Grandin
Change-Id: Ib91c6d23a1af3735d9c030eaf9efae817f513c58 Reviewed-on: https://gerrit.libreoffice.org/37982 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-23enhance useuniqueptr lopluginNoel Grandin
teach it to look for the following sequence in a destructor: delete m_pfoo; m_pfoo = nullptr; Change-Id: Icd6271a63a024e32b53cc9e599f8f59952160380 Reviewed-on: https://gerrit.libreoffice.org/37900 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-21Fix typosAndrea Gelmini
Change-Id: I438b6719817e0bbb47370ec54561eed2bc402cba Reviewed-on: https://gerrit.libreoffice.org/37783 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-05-19...and re-eanble loplugin:stringcopy againStephan Bergmann
<http://reviews.llvm.org/D22128> "Make CastExpr::getSubExprAsWritten look through implicit temporary under CK_ConstructorConversion" was biting me again. (I had originally developed loplugin:stringcopy against a Clang build that includes my local fix for that issue. I really need to see to get that resolved upstream...) (And while 957874168491f4b030fda85c65dd969aae82a670 "loplugin:stringcopy" was actually a false positive, it doesn't hurt either, so just keep it.) Change-Id: I726956adfbe67681005173cfdfed2e4b4cd6253d
2017-05-19Disable loplugin:stringcopy for nowStephan Bergmann
Some versions of Clang apparently have an issue with CastExpr::getSubExprAsWritten, causing false postivies as in 957874168491f4b030fda85c65dd969aae82a670 "loplugin:stringcopy", where getSubExprAsWritten in > CXXFunctionalCastExpr 0x114a333a8 'class rtl::OUString' functional cast to class rtl::OUString <ConstructorConversion> > `-CXXBindTemporaryExpr 0x114a33388 'class rtl::OUString' (CXXTemporary 0x114a33380) > `-CXXConstructExpr 0x114a33348 'class rtl::OUString' 'void (class rtl::OUString &&)' elidable > `-MaterializeTemporaryExpr 0x114a33330 'class rtl::OUString' xvalue > `-CXXBindTemporaryExpr 0x114a33310 'class rtl::OUString' (CXXTemporary 0x114a33308) > `-ImplicitCastExpr 0x114a332f0 'class rtl::OUString' <UserDefinedConversion> > `-CXXMemberCallExpr 0x114a332c8 'class rtl::OUString' > `-MemberExpr 0x114a33290 '<bound member function type>' .operator OUString 0x1149b3b60 > `-DeclRefExpr 0x114a324b8 'class jfw::CXmlCharPtr' lvalue Var 0x114a31ce0 'sUser' 'class jfw::CXmlCharPtr' erroneously returns the MaterializeTemporaryExpr instead of looking through all the way down to the DeclRefExpr. Will need further investigation. Change-Id: I579cd6047b8bbf8833123ce5ad47ae7e3a33eb12
2017-05-19loplugin:stringcopyStephan Bergmann
Change-Id: Ib04ef019996888166c25ad140b7c718a173a782a
2017-05-19loplugin:unusedfieldsNoel Grandin
make it a little smarter in dealing with fields that are smart pointers Change-Id: I44072105170882dc29fb19558f1065cffc7e5f11 Reviewed-on: https://gerrit.libreoffice.org/37751 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-18Remove unnecessary restrictionsStephan Bergmann
Change-Id: Idc0db273f7ad2d6b11113752ca01a1f2a327e991
2017-05-18Rewrite in macro argumentsStephan Bergmann
Change-Id: I6ae619edac26fe06d1f86f139b7cf71ce31146d4
2017-05-18Avoid nested automatic rewritesStephan Bergmann
...which would come out garbled. One place is > bool bRet = SfxItemState::SET == pSet->GetItemState( i, rAttr.Which() != RES_TXTATR_AUTOFMT, &pItem ); in SwAttrHandler::PushAndChg (sw/source/core/text/atrstck.cxx) Change-Id: I1486313b25850dc59e10edb38b8bd28a30e6aa63
2017-05-18Refuse to rewrite in workdirStephan Bergmann
...instead of merely getting a warning from PluginHandler::HandleTranslationUnit after the fact. Such automatic rewriting should probably never be what one wants. Change-Id: I3829007224a197ebb4d55d24323b375cbbdf815c
2017-05-18Adapt pathname checks to mixed usage of \ and / on WindowsStephan Bergmann
Change-Id: I91bc89a9076c6642e06b238f65f2d31a1d20c6b5
2017-05-18loplugin:unusedmethodsNoel Grandin
Change-Id: I1c50d176e793397a1f9625f797a3750cf191a61c Reviewed-on: https://gerrit.libreoffice.org/37679 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-17Remove unused varStephan Bergmann
Change-Id: I187df1a6f5bf5d870820f60c6dca1ac3beb8cf22
2017-05-16Remove unused varStephan Bergmann
Change-Id: Id0266ad01eaabf2d9555e99f4a4c1c2300bb8be7
2017-05-16Extend loplugin:comparisonwithconstant beyond integral typesStephan Bergmann
Change-Id: Id3a8fd5d8b9975d3ae49af0648b39454310495fa
2017-05-16Try to fix loplugin:comparisonwithconstant's rewrite-with-macros issueStephan Bergmann
...that had plagued 2e293a731c1559c9869dfcb32491bc600fc18e4e "new loplugin/rewriter comparisonwithconstant" (in sal/osl/unx/pipe.cxx), and auto-rewrite the remaining occurrences in sal (that the mentioned commit had failed to address, for whatever reason) Change-Id: I3dc3bae8dd92ba8bf576f6e06e7c9ee21f883661
2017-05-16loplugin:comparisonwithconstant in accessibilityNoel Grandin
Change-Id: I934c78ec8daec656ca656d5c784f80895abfd2e4 Reviewed-on: https://gerrit.libreoffice.org/37666 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-16Also filter out flags like -fsanitize-address-globals-dead-strippingStephan Bergmann
...to avoid -Werror,-Wunused-command-line-argument in case some ASan build setting passes in such flags Change-Id: Ia613a10e3564a23715019ee0c7c755cdcbf7a47c
2017-05-16tighten up the check a little moreNoel Grandin
Change-Id: Ic19364d2daa064a20da0ed9d9641f1646d8f6ce3
2017-05-16loplugin:unusedfields improve write-only analysisNoel Grandin
by whitelisting a couple of methods we know only write to their parameters Change-Id: Id7aef9c03c23d10c27707b21eb9a0db4a6c2757c Reviewed-on: https://gerrit.libreoffice.org/37647 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-15loplugin:useuniqueptrNoel Grandin
ignore SAL_LOG type stuff in the destructor Change-Id: If014382ca0c96edd3f2b325a28451d83b3d1f278 Reviewed-on: https://gerrit.libreoffice.org/37539 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-12loplugin:constantparamNoel Grandin
Change-Id: I67d74072c776c32a1f91df94c621efe180baf5dc Reviewed-on: https://gerrit.libreoffice.org/37481 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-11Fix typosAndrea Gelmini
Change-Id: I204178ed4cf0fd3f43043cf1dfde85bb27002fee Reviewed-on: https://gerrit.libreoffice.org/37498 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-05-10new loplugin checkunusedparamsNoel Grandin
Change-Id: I8f6974e34e686fc97014de97f072b81aa73f969b
2017-05-10add some some empty string names to constantparam lopluginNoel Grandin
Change-Id: I8f67212271a798d544b7aad46f08890122cd5e18
2017-05-09make loplugin constantparam smarter about string paramsNoel Grandin
Change-Id: Id3df69b38fd35f46735246a6d307a89aa10d4294 Reviewed-on: https://gerrit.libreoffice.org/37426 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>