973 Commits

Author SHA1 Message Date
Stephan Bergmann
a53808c0ed loplugin:dllprivate
Change-Id: I1fe70a39c50aba8b84c117653185fc37dbbfeab0
2016-09-13 22:26:22 +02:00
Stephan Bergmann
91dd2db17b loplugin:override: No more need for the "MSVC dtor override" workaround
The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark
overriding destructors as 'virtual'" appears to no longer be a problem with
MSVC 2013.

(The little change in the rewriting code of compilerplugins/clang/override.cxx
was necessary to prevent an endless loop when adding "override" to

  OOO_DLLPUBLIC_CHARTTOOLS    virtual ~CloseableLifeTimeManager();

in chart2/source/inc/LifeTime.hxx, getting stuck in the leading
OOO_DLLPUBLIC_CHARTTOOLS macro.  Can't remember what that
isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.)

Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
2016-09-13 13:19:22 +02:00
Noel Grandin
25e4e9694c handle nullptr in various clang plugins
since we are using it so widely now, instead of NULL

Change-Id: I990ff1334f657663e8791ab064d69e56636fe6e7
2016-09-12 08:22:03 +02:00
Noel Grandin
b1164b07f9 loplugin:constantparam in sd
Change-Id: I2bc989802c12b379a1ba4202f54ecfef1f339c8c
Reviewed-on: https://gerrit.libreoffice.org/28774
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-09-10 11:28:16 +00:00
Stephan Bergmann
31dc693029 loplugin:refcounting: No more special-handling of SvXMLImportContext
...after 32ccb4ea863651c22bf33cc15012971d2a2d2810 "resolve the snafu with 2
separate refcounted bases"

Change-Id: Iaf13deb0b83b6dfe1a2cf3863e07cf042c8e4f47
2016-09-09 09:46:39 +02:00
Noel Grandin
d2143eacaf teach loplugin constantparam about default param values
Change-Id: I334622bd34d8349f5b3988122d282b1062b225bb
2016-09-06 12:59:13 +02:00
Noel Grandin
d69066115c improve loplugin:countusersofdefaultparams to check constructors
and their call sites

Change-Id: Ie068cfe2a8f7c3887d38f186a5e91b0cfdcad236
2016-09-06 12:56:45 +02:00
Maxim Monastirsky
671ac3a922 Looks like the menu highlight handler is now unused
Change-Id: I75ff4bce35e7940e07b760f672e08ffe0dd208f8
Reviewed-on: https://gerrit.libreoffice.org/28580
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2016-09-01 09:39:52 +00:00
Stephan Bergmann
c5d8cb41a5 loplugin:stringconstant: adapt to improved OUStringLiteral1
Change-Id: I5c9bfbb97f0eabe1ea691faf522d22070243d234
2016-08-30 15:30:36 +02:00
Stephan Bergmann
bdd60f1f5e Adapt loplugin:stringconstant to improved OUStringLiteral1
Change-Id: Ibc5128df8bcf8cb5f2f09551c0de6dfdb46bdee0
Reviewed-on: https://gerrit.libreoffice.org/28447
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-08-29 11:44:44 +00:00
Stephan Bergmann
2c10714426 Make OUStringLiteral1 a wrapper around UTF-16 instead of just ASCII
...not merely an ASCII character

Change-Id: Id2b381b35fe3a15574728ed973d60263dfef7249
Reviewed-on: https://gerrit.libreoffice.org/28446
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-08-29 11:44:31 +00:00
Noel Grandin
86c0ce4d46 loplugin:countusersofdefaultparams
Change-Id: I26f46ddac3d7d810ebfa1c3e7f1a77427369828e
Reviewed-on: https://gerrit.libreoffice.org/28451
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-29 08:41:53 +00:00
Stephan Bergmann
28cb2c1764 loplugin:refcounting: also cover temporaries being directly stack managed
Change-Id: Ib0f7c60df1d2fba0d4d9d3fa6faf3bb97867ebc0
2016-08-26 12:40:43 +02:00
Stephan Bergmann
6a1bebcc89 Remove wrong check through template args from containsXInterfaceSubclass
...that was probably only there as a workaround for cases (equally wrongly)
covered by the check for !hasAnyDependentBase in isDerivedFrom.  And the latter
appears to no longer be necessary, probably because the cases it happened to
cover intentionally are now covered correctly through some other logic that got
added to this plugin meanwhile.

Change-Id: Ife6370b4f966198fc731813afe62d765450382e6
2016-08-26 12:36:12 +02:00
Stephan Bergmann
e3e66f7b07 Minor improvements of loplugin:staticaccess
Change-Id: I731aab418fb42922208afdaa60d98ccd76377dab
2016-08-26 12:35:24 +02:00
Stephan Bergmann
6810f00d09 loplugin:staticaccess: Extend loplugin:staticcall to cover all access...
to static members (data, in addition to function) via class member access
syntax.  Also covers the (somewhat obscure) access to enumerator members.

Change-Id: Iec54b8df2fdb423c0caf21a0dd0f9fe8fdf33897
2016-08-25 17:16:14 +02:00
Noel Grandin
b8064bdf7f new loplugin: countusersofdefaultparams
Change-Id: I79e2c690f3e664c14af12cf763dd5a8ac20d6b04
Reviewed-on: https://gerrit.libreoffice.org/28353
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-25 06:37:42 +00:00
Stephan Bergmann
fb21736979 Move loplugin:returnbyref to store
...it complains about

  SbxValues * data() { return &aData; }

(include/basic/sbxvar.hxx) returning by pointer rather than reference, but I see
nothing wrong with that.

Change-Id: I1e65ed47322d3b52d0e34a8233f146af86e209f3
2016-08-21 21:20:40 +02:00
Noel Grandin
95be297746 loplugin:unusedenumvalues in sw
Change-Id: Ia5faa65cd7824183cead2634edab96b5d23a6c02
Reviewed-on: https://gerrit.libreoffice.org/28072
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-17 06:43:45 +00:00
Stephan Bergmann
63d94a6c50 Fix check for aMinusSign in chart2/inc/SpecialUnicodes.hxx
Change-Id: I15e344874d90cc38acb219e7c07579d68af89043
2016-08-16 09:16:55 +02:00
Noel Grandin
127f70d66a new loplugin to check for static OUStrings
that are better declared as OUStringLiteral

Change-Id: Ifb5d9a12bb31a68641940bec16971a8181a46567
Reviewed-on: https://gerrit.libreoffice.org/27377
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-16 06:30:09 +00:00
Noel Grandin
d30a4298bd loplugin:unusedenumconstants in package..svtools
Change-Id: I8136b93b9303ebecafd791159e813c335b1bc172
Reviewed-on: https://gerrit.libreoffice.org/28052
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-12 06:58:39 +00:00
Noel Grandin
045879b557 new loplugin unusedenumvalues
Change-Id: I2efcb0332cca23bd53088121b4cbfc702011d0b9
2016-08-11 13:03:54 +02:00
Noel Grandin
3716b14426 loplugin:constantparam
Change-Id: Ia06b9b189033b9409d7a59a211866f66a0614886
Reviewed-on: https://gerrit.libreoffice.org/28016
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-11 06:05:32 +00:00
Noel Grandin
e5d24f50b7 clang3.9 compatibility
Change-Id: Idbba88f1a890c068c9813aff2287f0983d1b8742
2016-08-10 13:02:02 +02:00
Noel Grandin
602647c241 loplugin:unnecessaryvirtual
Change-Id: If25d9307efda5f57b0f80a0cf5c2c5cab6a752d6
Reviewed-on: https://gerrit.libreoffice.org/27981
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-08 13:06:58 +00:00
Miklos Vajna
389d4d4142 sfx2: introduce SfxViewShell::GetViewShellId()
This is quite similar to SwFrame::GetFrameId(), i.e. it assigns a
numeric identifier to each instance to help debugging, as those
identifiers are stable accross runs.

Change-Id: I9cc57e316435f0284a1d481a956a703be859d67e
Reviewed-on: https://gerrit.libreoffice.org/27669
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-07-29 11:39:22 +00:00
Noel Grandin
508c95f1b6 improve passstuffbyref return analysis
Change-Id: I4258bcc97273d8bb7a8c4879fac02a427f76e18c
Reviewed-on: https://gerrit.libreoffice.org/27317
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-27 06:48:25 +00:00
Noel Grandin
98c90acdfc loplugins: more consistent naming of output files
Change-Id: Ia26f697cb16078f235c94e4cff449a60c1bbd74e
2016-07-25 13:23:10 +02:00
Noel Grandin
69dbf6f086 clang 3.8 does not seem to have EvaluateAsFloat
Change-Id: I0d846a2e9bc6db192cbf8f5dbce104c11ff409b4
2016-07-25 09:44:06 +02:00
Noel Grandin
62462664be fix for overrideparam loplugin
Change-Id: Ibf4d3ffee0bfe335c479a15fcd183dfd8c207335
2016-07-25 09:20:24 +02:00
Noel Grandin
594dd232c8 loplugin:overrideparam enable checking that default values match
Change-Id: I4ca21d12d6f5dd4bb0b2705f7e36249082b0838c
2016-07-25 08:14:06 +02:00
Noel Grandin
938821fb08 new loplugin overrideparam
verify that parameters on override methods have the same set of default
values for their params as their parent/super-methods do.

Change-Id: Ibdbc1c6e417fbaa680ea025a6bbf5ba9c2e5bcd2
Reviewed-on: https://gerrit.libreoffice.org/27437
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-25 06:09:17 +00:00
Noel Grandin
36313d93ac improve unnecessaryoverride plugin
to ignore ImplicitCastExpr when calling superclass method

Change-Id: I76a3068446acfee85aa1baeb216e57f63c7099c1
Reviewed-on: https://gerrit.libreoffice.org/27279
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-19 05:39:46 +00:00
Stephan Bergmann
e8b2fc7a92 Adapt to older Clang that don't have CompoundStmt::body_front
Change-Id: I41555c0a2b35ad950797f65e02ed1ee060c4bf0a
2016-07-18 11:46:41 +02:00
Stephan Bergmann
018e89337d Improve loplugin:unnecessaryoverride
<sberg> thorsten, remember what that "TODO" in
 SvxAccessibleTextPropertySet::getSupportedServiceNames was to be about exactly,
 in a909acb7009acadffa53e74ea05ddb88803490f1 ?
<thorsten> sberg: that's a nonsense, prolly copy'n'pasted, or a 'please review
 me'
<sberg> thorsten, OK, thanks (that override will eventually go away with
 loplugin:unnecessaryoverride, and the TODO comment be lost)

Change-Id: Iba964c61768459aac4067bbd4e1f7d4f78f6adac
Reviewed-on: https://gerrit.libreoffice.org/27232
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-07-15 14:08:07 +00:00
Noel Grandin
6e72f0251b new loplugin unnecessary override
Change-Id: I88d3e33823d68745b98625050a8a274f9ef04bcb
Reviewed-on: https://gerrit.libreoffice.org/27135
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-07-15 14:05:41 +00:00
Stephan Bergmann
ba94c97644 loplugin:cstylecast: Better heuristic...
to determine code shared between C and C++

Change-Id: I1fadf69bf9d0a2bde527b7c3f2ec4c687d70e4ae
2016-07-12 17:53:16 +02:00
Stephan Bergmann
a6060e02f7 Fix typo relase_ChildImpl -> release_ChildImpl
Change-Id: I68faf8cfb8eb390e7970383b8a6596a9dd3f95f7
2016-07-12 15:57:36 +02:00
Noel Grandin
e12fbdd64b only traverse the dtor's statements once
rather than twice, once implicitly from TraverseCXXDestructorDecl and
explicitly from VisitCXXDestructorDecl

Change-Id: I62a794faa530f2b54b82c86de0629afa28f30091
Reviewed-on: https://gerrit.libreoffice.org/27139
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-12 09:33:30 +00:00
Noel Grandin
03fefeec99 new plugin constparams
very basic detection of pointer and reference params that can be const.

Off by default until the relevant changes have landed.

Change-Id: I88bba4e67307e3fb0e11dad252ec59c913828763
2016-07-12 10:54:43 +02:00
Noel Grandin
52b91f3454 new loplugin fragiledestructor
fix up a small number of places that it finds

Change-Id: Iedc91e141edfb28f727454f698cd2155a7fd5bf4
Reviewed-on: https://gerrit.libreoffice.org/26566
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-12 08:45:14 +00:00
Stephan Bergmann
3510a48794 loplugin:literaltoboolconversion: Better heuristic...
to determine code shared between C and C++

Change-Id: Ib1f3892b388ebd6a67cc88831a99dfb4ccdfbc2f
2016-07-11 21:30:34 +02:00
Stephan Bergmann
744c924754 Adapt to Clang 3.4 again
Change-Id: I33c1cee01593b06efca6e1aae283ce80d5cd77be
2016-07-11 18:09:55 +02:00
Stephan Bergmann
6f8d047519 loplugin:salbool: Better heuristic to determine code shared between C and C++
Change-Id: I09c9c57d5adeb665cc2508fad9727085a3289bfb
2016-07-11 16:32:28 +02:00
Stephan Bergmann
f541b99855 loplugin:nullptr: Better heuristic to determine code shared between C and C++
Change-Id: I51e1c5fa4639e51fac90f92adf3d87d12960d589
2016-07-11 14:32:07 +02:00
Stephan Bergmann
9d80c032fe loplugin:redundantcast: redundant static_casts
Change-Id: I4d50b77745d68a23136221ef06f327137e89fa7e
2016-07-08 16:47:31 +02:00
Stephan Bergmann
eba4f69a32 loplugin:passstuffbyref also for {css::uno,rtl}::Reference
Change-Id: I76cfdcd031430dc10c464896af2e79221e9da0c3
2016-07-07 18:59:55 +02:00
Noel Grandin
716844c6ab restore loplugin:vclwidget checking for calling clear() on VclPtr fields
Change-Id: I85eda1c33016c1461d897fc0a3b70457209a7405
Reviewed-on: https://gerrit.libreoffice.org/26806
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-06 06:38:30 +00:00
Noel Grandin
7001ca25ec merge LineProperties with chart::ErrorBar
Change-Id: Ic3490a15339ff981e90a86cb69c206c231db9161
Reviewed-on: https://gerrit.libreoffice.org/26932
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-05 10:51:09 +00:00