summaryrefslogtreecommitdiff
path: root/compilerplugins
AgeCommit message (Collapse)Author
2015-11-25loplugin:unusedfields in include/sot,include/svl,include/svtoolsNoel Grandin
Change-Id: Ia2dd13c2c48b127ab85311a668fa1f37608d360a
2015-11-24update unusedfields plugin to use new clang warn_unused attribute supportNoel Grandin
Change-Id: I7b84de29b672e40cbf3c3d340d235f334d2be8cb
2015-11-24loplugin:unusedfields in vcl/Noel Grandin
and remove the unused SALEVENT_MOUSEACTIVATE stuff Change-Id: Ieb85872eca68621c6a7be47ff5dbea12f7690507 Reviewed-on: https://gerrit.libreoffice.org/20140 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-24loplugin:unusedfields in tools/Noel Grandin
Change-Id: Ic460bf42cbcf356cdcebbd5060a0dad3d3caa4ef
2015-11-24loplugin:unusedfields in sw/Noel Grandin
Change-Id: I323a038e5581b00cd3a4ea2f362c66540377759e
2015-11-23loplugin:unusedfields in scNoel Grandin
Change-Id: If5123e676a27302f3e11475309bc748977c6f430
2015-11-20loplugin:unusedfields in dbaccessNoel Grandin
Change-Id: I563c3727c1719fe21acced269e5469c2de7112e8
2015-11-20loplugin:unusedfields in basctlNoel Grandin
and improve the plugin to search for only WARN_UNUSED and fundamental types Change-Id: Ic06207758e28d44d64d76d8119fd76b5b098bb05
2015-11-20new loplugin:unusedfieldsNoel Grandin
run it over the framework module Change-Id: I1220a4be0936ba30136ce22ffd78633c8a7b9d35
2015-11-19loplugin:sallogareasStephan Bergmann
Change-Id: I2220ab194384fb397716bf3227d38716ba54f537
2015-11-19isLookupContext already available in Clang 3.7.0Stephan Bergmann
Change-Id: Ia17a116b1f7605b5a8d572c6a6f4ef64adea8f94
2015-11-19Adapt compilerplugins to old Clang versionsStephan Bergmann
Change-Id: I91335f1e81e251f0578792517dded9fae239fb61
2015-11-17vcl, sd: rename some overly generic static variablesMichael Stahl
Change-Id: I89159df36361f9ceff3401ef379c8230465617b7
2015-11-17Fix check for std::weak_ptr (that may be in an inline namespace)Stephan Bergmann
Change-Id: I048aef08df43d07544aafc69b711d258dc40bc21
2015-11-17Work around loplguins:badstaticsStephan Bergmann
Change-Id: I597dbc3e4288acb5b71f7a344ae78ba568451614
2015-11-17Work around loplguins:badstaticsStephan Bergmann
Change-Id: I9d8d0f6cc001de09d8d3f96d8ad7e243e07f426d
2015-11-17Work around loplguins:badstaticsStephan Bergmann
Change-Id: I243dcb86cc1a99550b26962daf47c19eb62aa8df
2015-11-17Improve commentStephan Bergmann
Change-Id: I25931d59fc1b4feb1fd1eaa036a64a28a269f409
2015-11-17Work around loplugin:badstaticsStephan Bergmann
...about static ImplImageTree instance; in ImplImageTree::get (vcl/source/gdi/impimagetree.cxx) due to StyleIconSet ImplImageTree::maIconSet; (of type std::unordered_map<OUString, IconSet, OUStringHash>) due to IconCache ImplImageTree::IconSet::maIconCache; (of type std::unordered_map<OUString, std::pair<bool, BitmapEx>, OUStringHash>), reported at least when building against Mac libc++. This is a false positive, as ImplImageTree::shutDown cleans this up. Change-Id: Idb1a99aa33f71286e57b31b7adb833e3ee8b5f5a
2015-11-17Improve loplugin:badstatics diagnostic outputStephan Bergmann
Change-Id: Ia2f088a79b03ff866429e1cae73edccd36a01b4f
2015-11-17Use a DiagnosticsEngine::NoteStephan Bergmann
...a Remark prints the whole stack of includes leading up to the source Change-Id: I41e5bd2855b4a55b54e63432703f2e65b4c44249
2015-11-17loplugin:unnecessaryvirtualNoel Grandin
update the plugin with lessons learned from the mergeclasses plugin and re-run it Change-Id: I9d622eb3d05fceaf8fa764c533c8fa5dfb4c7711 Reviewed-on: https://gerrit.libreoffice.org/20015 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-17compilerplugins: enhance badstatics plugin to follow pointersMichael Stahl
.... and references. This gives numerous false positives as pointers may be re-set prior to shutdown, so needs a white-list. Change-Id: I19a011c6f19501cc31b3d9ae76b599296f132478 Reviewed-on: https://gerrit.libreoffice.org/19949 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2015-11-16Move CommandInfoProvider to vcl and use it from thereSamuel Mehrbrodt
Change-Id: If7e3ef81cad8974bc54f359096e3ecc700fa62d6 Reviewed-on: https://gerrit.libreoffice.org/19984 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2015-11-16Cleanup: Consolidate the different ways to get command labels/tooltipsSamuel Mehrbrodt
Change-Id: Ieab809a3122c9d592894b84ec2e68195a4e02dde
2015-11-15cppcheck:stlIfStrFindNoel Grandin
"Inefficient usage of string::find() in condition; string::compare() would be faster." Change-Id: I90403b1d05eff6499c10be33068e5fd4fed30b62 Reviewed-on: https://gerrit.libreoffice.org/19966 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-13new loplugin ptrvector - find bad comparison of container<unique_ptr>Noel Grandin
Change-Id: Idb18ae1ca2f7c644680703dc3b7dd3cd6000e040
2015-11-13sc: loplugin:badstatics: remove pActiveEdWnd global variableMichael Stahl
Just use a Link, or rather std::function to set a member in the tab page. Unfortunately loplugin:vclwidgets complains about the new member. Change-Id: Ie2f9cb73c38292d02057d43b12694c6609fa0db8
2015-11-12Generalize COM_GCC_IS_CLANG -> COM_IS_CLANGStephan Bergmann
...in anticipation of building with clang-cl.exe on Windows Change-Id: I1d723c9d3b5ca8a2bc6b27ef0189a7b053581398 Reviewed-on: https://gerrit.libreoffice.org/19928 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2015-11-11loplugin:mergeclass, fix and update resultsNoel Grandin
Change-Id: I0660833db69604c5c4dd3c5826f1baac3086e052
2015-11-115th step to remove tools/rtti.hxxOliver Specht
tools/rtti.hxx removed completed the interface of some Sdr.* Items and removed pseudo items Change-Id: I0cdcd01494be35b97a27d5985aa908affa96048a Reviewed-on: https://gerrit.libreoffice.org/19837 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Oliver Specht <oliver.specht@cib.de>
2015-11-11disable loplugin memoryvar for nowNoel Grandin
seems to be crashing with latest(trunk) clang sometimes Change-Id: Ice92b35deb6cb4610dbd53f570d0b43e9d2a2834
2015-11-11new loplugin: memoryvarNoel Grandin
detect when we can convert a new/delete sequence on a local variable to use std::unique_ptr Change-Id: Iecae4e4197eccdfacfce2eed39aa4a69e4a660bc Reviewed-on: https://gerrit.libreoffice.org/19884 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-10Missing isInLokIncludeFile checkStephan Bergmann
Change-Id: I6577987f3f3717337e6607ffbe38397f229978f0
2015-11-10Keep LibreOfficeKit.hxx compatible with C++03Stephan Bergmann
Change-Id: Ic2f123c9b341dbb421b766c3bba1fc56c1bfb41d
2015-11-09new loplugin: oncevarNoel Grandin
Change-Id: If57390510dde4d166be3141b9f658a7453755d3f Reviewed-on: https://gerrit.libreoffice.org/19815 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-06compilerplugins: enhance "badstatics" plugin to find membersMichael Stahl
Finds static variables of types that have bad non-static members. Change-Id: I81ee940580c0f043feb543840ea4d3dd27734202
2015-11-06compilerplugins: getAsTagDecl doesn't exist in clang 3.5Michael Stahl
Change-Id: If7277820227486e2eb578a167e0fd9f05c8f74ae Reviewed-on: https://gerrit.libreoffice.org/19823 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2015-11-06loplugin:stringconstant: elide explicit ctor usageStephan Bergmann
Change-Id: I962db9583ef9cada42a61b6a95eeea818fceeead
2015-11-05fix tdf#95488, crash in report wizardNoel Grandin
This reverts commit bb76b8f10697f3d5ca1f9a2f19902b043bd61cd7 "loplugin:mergeclasses" Change-Id: Ib65459ab45cd4cefa859ed75f9ddc4f070879b1d
2015-11-05Improve warning messagesStephan Bergmann
Change-Id: I75eb9f17a3dcc688314355fa957e3f34086b161a
2015-11-05Do not implicitly run this for now; it breaks the buildStephan Bergmann
Change-Id: I84679c4ca395f934bca8f92f0587f6cf16cfa5e6
2015-11-05complete initial compiler plugin for the ServiceDocumenterBjoern Michaelsen
- this creates a set of static html-meta-redirect-pages linking the UNO implementation name to its C++ class, while doing a clang compile from scratch - the output is written to $(WORKDIR)/ServiceImplementations - still quite some corner cases missing, e.g: - anonymous namespaces - non-trivial getImplementationName() functions Change-Id: I19a0e8a3901277dc3811eb428cac9d00737f14a9
2015-11-05skeleton implementation for ServiceDocumenter compiler pluginStephan Bergmann
Change-Id: I6a9c957c0c4dac16365d269e57c30210619d23c9
2015-11-04yyyyyNoel Grandin
Change-Id: I9a947beefd2dfe21da8239e841ea3fb416bd1548
2015-11-02tdf#94269: Replace "n" prefix for bool variables with "b"Benjamin Ni
Change-Id: I178545792c7354a362658ac7ef8b1d4cf0865797 Signed-off-by: Michael Stahl <mstahl@redhat.com>
2015-11-02compilerplugins: add "badstatics" to detect abuse of VCL BitmapsMichael Stahl
VCL Image/Bitmap/BitmapEx instances must not have static life-time because then they will be destructed after DeInitVCL() and that likely segfaults. Change-Id: I3ff8d32de729c971b190028094cb4efe206395e2
2015-10-30compilerplugins: check that we're not building ccache preprocessedMichael Stahl
... input, which breaks because a) isInUnoIncludeFile() will not recognize the paths (which is actually fixable if it used getPresumedLoc() to get the path), and b) the isMacroBodyExpansion() check in salbool.cxx (which doesn't look fixable). So instead of printing lots of spurious warnings just abort. Change-Id: I77fd77b4986d2b099453309ecdf31be9cf93ceec Reviewed-on: https://gerrit.libreoffice.org/19693 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2015-10-30compilerplugins: fix warning message copy-pastaMichael Stahl
Change-Id: I3b845ae46b0d0b14be90382727cc02a838a0392e
2015-10-27loplugin:unusedmethodsNoel Grandin
Change-Id: I161cd52606c11b6008f5d8b1d8ee391692f91861 Reviewed-on: https://gerrit.libreoffice.org/19231 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>