summaryrefslogtreecommitdiff
path: root/compilerplugins
AgeCommit message (Collapse)Author
2019-07-23Fix typosAndrea Gelmini
It passed "make check" Change-Id: I055017a7616ed4d9725c66a387c040b55e22751f Reviewed-on: https://gerrit.libreoffice.org/76202 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2019-07-23resurrect and improve loplugin:referencecastingNoel Grandin
Improve the plugin to avoid generating false+ with the special case of querying XInterface (what the code calls normalisation). Also ignore places where the querying is dealing with ambiguous base classes. Change-Id: I23b2b2fa6618328fafc4707b94c26582a462ea87 Reviewed-on: https://gerrit.libreoffice.org/74993 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-23loplugin:unusedfieldsNoel Grandin
Change-Id: If1e0b32f2cce7678f454009c0180d7612b4fb7c6 Reviewed-on: https://gerrit.libreoffice.org/76119 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-23close some more holes in structuresNoel Grandin
and improve the pahole script so I can just run it once over the whole codebase Change-Id: I7e1775974a3a61f8c0e40646158f01163ace60cc Reviewed-on: https://gerrit.libreoffice.org/76122 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-23loplugin:unusedmethodsNoel Grandin
Change-Id: I3bde62d674f5beaa6d19dcd22e6be15dfefe4205 Reviewed-on: https://gerrit.libreoffice.org/76118 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-22avmedia: Drop 'wrap_*' functionsMichael Weghorn
Just call the corresponding GStreamer functions directly. The wrapper functions are pointless since commit 6b911ae9eb9484bebbdc1323210020486f5ef33f ("Drop support for gstreamer-0.10"). Change-Id: I2963bd25a83632f4e693a1691180790452edffda Reviewed-on: https://gerrit.libreoffice.org/76116 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2019-07-22kf5/gtk3_kde5 fpickers: Drop unused 'allowRemoteUrls'Michael Weghorn
Change-Id: I591bf9fbe6e22bedda5a94334130a4f674cd66e6 Reviewed-on: https://gerrit.libreoffice.org/76110 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2019-07-21tdf#125922 rename kde5 to kf5 + plasma5Jan-Marek Glogowski
Just as the gtk3 plugin isn't named GNOME, rename kde5 to kf5, as it is based on the KDE frameworks 5 libraries. This also includes: * a convenience alias to load the kf5 VCL plugin in case someone requests the kde5 plugin. * keep convenience kde5 configure switch, but warn about it * rename detected desktop from kde5 to plasma5 Change-Id: I6764a05b81a5edbf284484c234fee2649aacf735 Reviewed-on: https://gerrit.libreoffice.org/75313 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2019-07-19make cppunitassertequals a shared pluginNoel Grandin
Change-Id: Ied9c26248cb72f2146fbe1a985f825f7525fa17c Reviewed-on: https://gerrit.libreoffice.org/75836 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-19loplugin:constantparamNoel Grandin
and tweak the plugin to handle a crash seen with clang-9 Change-Id: Ie1ccf80c16a20dbca58e5bd081af13f75cf5ac8f Reviewed-on: https://gerrit.libreoffice.org/75850 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-17Revert "simplify sharedplugin PostTraverse calls"Noel Grandin
This reverts commit ff55ad1aceb10b900254c8ad3629775b7789d60a, Lubos prefers it the way it was. Change-Id: I68edc21c438b6aa2fc819245dd9a3d590af3a278 Reviewed-on: https://gerrit.libreoffice.org/75790 Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins
2019-07-17make some plugins used the shared frameworkNoel Grandin
Change-Id: Ie283a4774564f25e0fde8ca35212f92be786d671 Reviewed-on: https://gerrit.libreoffice.org/75785 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-17make passparamsbyref a shared pluginNoel Grandin
Change-Id: I4119122f1bca77ee1424abdd90b0a0956b991704 Reviewed-on: https://gerrit.libreoffice.org/75743 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-17make overrridevirtual a shared pluginNoel Grandin
Change-Id: Ied3b772bdd54cb0e8d6214e7a51866364523b83b Reviewed-on: https://gerrit.libreoffice.org/75742 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-17rename override pluginNoel Grandin
in preparation for using it in the shared plugin infrastructure, which needs the name of the Registration variable to match the name of the plugin, which doesn't work when the plugin is named the same as a keyword Change-Id: I40a3dc1902f2fa1efe76b5e472cd03f4b480ff34 Reviewed-on: https://gerrit.libreoffice.org/75741 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-17loplugin:unusedmethodsNoel Grandin
Change-Id: Ie2285f64919d1c83b0a8df4ceb827f731e5cd609 Reviewed-on: https://gerrit.libreoffice.org/75739 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-17simplify sharedplugin PostTraverse callsNoel Grandin
(*) nobody is using the bool parameter, so drop it (*) nobody is using the "return false to permanently disable the plugin", and that is a dangerous footgun, so drop it Change-Id: I75c1fbd022ffb8aba7237568ce048031bbc31a5d Reviewed-on: https://gerrit.libreoffice.org/75726 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-16convert some plugins to LO_CLANG_SHARED_PLUGINSNoel Grandin
Change-Id: I63c9e010d83c24e18a36164ceb0441e48b757142 Reviewed-on: https://gerrit.libreoffice.org/75725 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-16convert redundantfcast to LO_CLANG_SHARED_PLUGINSNoel Grandin
Change-Id: I8c1c990d91676b33f2fd508025acfa93a66f4950 Reviewed-on: https://gerrit.libreoffice.org/75724 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-16convert some plugins to LO_CLANG_SHARED_PLUGINSNoel Grandin
Change-Id: I06ccd31248f9671fc96dc3d0e7f3cf696ec07f28 Reviewed-on: https://gerrit.libreoffice.org/75686 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-16macOS ld doesn't know --rpathStephan Bergmann
Change-Id: I4ebef2f15c409805adcd16916a9137b94e4ee535 Reviewed-on: https://gerrit.libreoffice.org/75677 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-07-16remove sallogareas header fileNoel Grandin
in preparation for using LO_CLANG_SHARED_PLUGINS Change-Id: I91cf186188bf0f15fc4e5adc095d404d89d0b025 Reviewed-on: https://gerrit.libreoffice.org/75681 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-16convert some plugins to LO_CLANG_SHARED_PLUGINSNoel Grandin
Change-Id: I7451a95377101004c7c53c918f3234415e06f555 Reviewed-on: https://gerrit.libreoffice.org/75670 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-15Revert "convert some plugins to use the sharedplugin infrastructure"Noel Grandin
This reverts commit fc1b213d157afa57704cec5a0fb65ae8c11d7822. I didn't convert these correctly, the Traverse calls need adjusting.
2019-07-15convert some plugins to use the sharedplugin infrastructureNoel Grandin
Change-Id: I690d9df436abdadc51a6d3f7df686a2e37f79f73 Reviewed-on: https://gerrit.libreoffice.org/75624 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-02update clang sharedvisitor.cxxLuboš Luňák
This should have been included in 9fbedb792993. Change-Id: I3b8b1a463c3f85d6cd4a4db14edcfedf01d7e5a9 Reviewed-on: https://gerrit.libreoffice.org/74956 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-07-01improve loplugin:blockblockNoel Grandin
look for nested blocks where the inner block also contains a break statement. Change-Id: I1e5b6ca4c42b995c9479a68b34a1e2f1eb015f57 Reviewed-on: https://gerrit.libreoffice.org/74946 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-25help compilerplugins generator find clang shared libs, if neededLuboš Luňák
Change-Id: I892aa42bc1e94823ab52cdfd6a855bf90106306d Reviewed-on: https://gerrit.libreoffice.org/74681 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-06-25do not use -g unconditionally for building the clang pluginLuboš Luňák
The generated files are ~700MiB here, compared to ~85MiB without. Change-Id: I76bafc59ff89fd7eb8ffbc4b9ad79bc63da8f064 Reviewed-on: https://gerrit.libreoffice.org/74678 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-06-25improve loplugin:simplifyconstructNoel Grandin
Change-Id: If863d28c6db470faa0d22273020888d4219e069e Reviewed-on: https://gerrit.libreoffice.org/74559 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-20loplugin:logexceptionnicely in variousNoel Grandin
Change-Id: I207d21e674366046e2663ebaf7f5161cde2c5fab Reviewed-on: https://gerrit.libreoffice.org/74336 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-18loplugin:passstuffbyrefNoel Grandin
Change-Id: Icb7c22cf4ac95eab54d04e79312fb471ca27bceb Reviewed-on: https://gerrit.libreoffice.org/74246 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-14loplugin:unusedmethodsNoel Grandin
Change-Id: I7787a8eedf500b0b16c04114935d3d3124d9ac3d Reviewed-on: https://gerrit.libreoffice.org/74032 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-14loplugin:unusedfields improvementsNoel Grandin
tighten up the only calling write-only methods part of the analysis Change-Id: I5bc6fdf0ce51940653317e8a48c5241705c90d4c Reviewed-on: https://gerrit.libreoffice.org/74022 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-13new loplugin logexceptionnicelyNoel Grandin
to be used to find places to use new TOOLS_WARN_EXCEPTION,etc macros Change-Id: I213ab47efa82075435bb800736ee0937aea0486c Reviewed-on: https://gerrit.libreoffice.org/73950 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-12weld OrganizeDialogCaolán McNamara
Change-Id: I976edb0b49c8439d1723be4544b10a5375b8e1d3 Reviewed-on: https://gerrit.libreoffice.org/73755 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-12loplugin:unusedmethodsNoel Grandin
Change-Id: I42667e8483d2cb4363227344faca3899bd95d424 Reviewed-on: https://gerrit.libreoffice.org/73824 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-12loplugin:unusedfieldsNoel Grandin
Change-Id: I0bd600b59b2bc4b50eb2d32e95c9d1167fdf2eab Reviewed-on: https://gerrit.libreoffice.org/73823 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-11commit loplugin:virtualdown resultsNoel Grandin
so in future I can just look at the stuff that has changed Change-Id: I7e3d79da21b48d53f316e467b4bb7447af1017c5 Reviewed-on: https://gerrit.libreoffice.org/73771 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-08loplugin:unusedfieldsNoel Grandin
Change-Id: I9758fd606c7d4c251a3ac06661d642a47260b5fc Reviewed-on: https://gerrit.libreoffice.org/73674 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-07Fix typosAndrea Gelmini
Change-Id: If9d52bd769d96865a3fbfdda1f339bbd0f8c3ca3 Reviewed-on: https://gerrit.libreoffice.org/73633 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-06-06loplugin:typedefparam: Work around different size_t typedefs on macOSStephan Bergmann
...which for me caused > [CXX] registry/tools/options.cxx > /Users/stephan/Software/lo/core/registry/tools/options.cxx:39:89: error: function param 3 at definition site does not match function param at declaration site, 'size_t' (aka 'unsigned long') vs 'size_t' (aka 'unsigned long') [loplugin:typedefparam] > bool Options::checkArgument(std::vector< std::string> & rArgs, char const * arg, size_t len) > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ > /Users/stephan/Software/lo/core/registry/tools/options.hxx:41:93: note: declaration site here [loplugin:typedefparam] > static bool checkArgument (std::vector< std::string > & rArgs, char const * arg, size_t len); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ because one is TypedefType 0x115a4d700 'size_t' sugar |-Typedef 0x115a4d460 'size_t' `-BuiltinType 0x7fde8e0393c0 'unsigned long' while the other is TypedefType 0x7fde8e94a3a0 'size_t' sugar |-Typedef 0x7fde8e94a138 'size_t' `-TypedefType 0x7fde8e94a100 '__darwin_size_t' sugar |-Typedef 0x7fde8e88cc28 '__darwin_size_t' `-BuiltinType 0x7fde8e0393c0 'unsigned long' and > [CXX] store/source/storcach.cxx > /Users/stephan/Software/lo/core/store/source/storcach.cxx:218:43: error: function param 1 at definition site does not match function param at declaration site, 'std::size_t' (aka 'unsigned long') vs 'std::size_t' (aka 'unsigned long') [loplugin:typedefparam] > void PageCache::rescale_Impl (std::size_t new_size) > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ > /Users/stephan/Software/lo/core/store/source/storcach.hxx:67:36: note: declaration site here [loplugin:typedefparam] > void rescale_Impl (std::size_t new_size); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ because one is ElaboratedType 0x116f5cba0 'std::size_t' sugar `-TypedefType 0x7fd58673e090 'size_t' sugar |-Typedef 0x7fd58673dde8 'size_t' `-BuiltinType 0x7fd58603cfc0 'unsigned long' while the other is ElaboratedType 0x7fd586742200 'std::size_t' sugar `-TypedefType 0x7fd58621cdc0 'size_t' sugar |-Typedef 0x7fd5861ce4a0 'size_t' `-TypedefType 0x7fd5861cdc70 '__darwin_size_t' sugar |-Typedef 0x7fd586889ec8 '__darwin_size_t' `-BuiltinType 0x7fd58603cfc0 'unsigned long' Change-Id: I3622716376198cc046b0489db59c5cbf613ea1f4 Reviewed-on: https://gerrit.libreoffice.org/73585 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-31tdf#114596 compilerplugins: add exception to [loplugin:refcounting]Xisco Fauli
Change-Id: I94a1d4fcacc7907df21b05fd773d3273e1a0d6a2 Reviewed-on: https://gerrit.libreoffice.org/73147 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-27fix compilerplugin rebuilding when system clang changesLuboš Luňák
Since Clang doesn't keep backwards binary compatibility, it's necessary to rebuild when Clang (major version?) changes. This was broken because e.g. check.cxx didn't include plugin.hxx, and so it didn't depend on config_clang.h . Now simply force timestamp change if config_clang.h changes. This still needs re-running configure though. Change-Id: Icbc404b37105599f1ca6c8996f5a3d45d50082db Reviewed-on: https://gerrit.libreoffice.org/72976 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-05-27Revert "Remove broken rebuild of compilerplugins when CLANG_FULL_VERSION..."Luboš Luňák
This reverts commit efe28895498b03f1468a9dc9f510452f36affc2f. It is that commit that is broken. The only thing that does not work is that not all compilerplugin sources depend on config_clang.h, the rest is fine. So instead of reverting something that in principle works (and even complaining in the commit message about the original problem), just fix it (will do in next commit). Change-Id: Ic7766a97220d5b7ef1cd195320899564140fdf1c Reviewed-on: https://gerrit.libreoffice.org/72975 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-05-27sharedvisitor generator should also be rebuilt if clang changesLuboš Luňák
Change-Id: I7602974ed6f4969ec9f79504bdb72758a747d39a Reviewed-on: https://gerrit.libreoffice.org/72982 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-05-27fix clang version checkLuboš Luňák
As 56f87dac69b4 says, this is about clang 9, not clang 8. Change-Id: I2978d2235c7eb3ad438082f7b08a1bd68977ed6f Reviewed-on: https://gerrit.libreoffice.org/72974 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-23Avoid putting generator.dwo in current working dirStephan Bergmann
At least some versions of GCC put the -gsplit-dwarf .dwo file in cwd when compiling and linking is done together in one compiler invocation, see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90575> "-gsplit-dwarf leaves behind .dwo file in cwd". Change-Id: I1b418e400a3e8107997fbbfd7f87ef3ac9fbbd28 Reviewed-on: https://gerrit.libreoffice.org/72841 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-22New loplugin:dataStephan Bergmann
...following up on 1453c2c8f13bac64ecd1981af7cebf1c421808ac "prefer vector::data to &vector[0]" Change-Id: I7c113747d92d144a521d49b89384dd8bf1215c01 Reviewed-on: https://gerrit.libreoffice.org/72765 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-22Don't try to evaluate value of value-dependent ExprStephan Bergmann
...which causes asserts to fire since <https://github.com/llvm/llvm-project/ commit/04323c24a1ac9464471331d9f6499d3cb95d1ccd> "Added an assertion to constant evaluation enty points that prohibits …" Change-Id: Iafbf1cea85d15a38a71275d4cea8303bab500f6a Reviewed-on: https://gerrit.libreoffice.org/72723 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>