summaryrefslogtreecommitdiff
path: root/idlc
AgeCommit message (Collapse)AuthorFilesLines
2017-03-03Remove redundant 'inline' keywordStephan Bergmann1-1/+1
...from function definitions occurring within class definitions. Done with a rewriting Clang plugin (to be pushed later). Change-Id: I9c6f2818a57ccdb361548895a7743107cbacdff8 Reviewed-on: https://gerrit.libreoffice.org/34874 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-21Idlc::m_pErrorHandler is unusedStephan Bergmann2-3/+0
Change-Id: I41fea5e08381e21dff12f61142a4d54f07a502f4
2017-02-21loplugin:subtlezeroinit: idlcStephan Bergmann3-13/+13
Change-Id: Ifec509c4d96a932cfe591b5ffa77027b7b372d52
2017-02-16convert ExprComb to scoped enumNoel Grandin3-83/+73
and drop unused EC_bit_neg enumerator Change-Id: I8a93310cd849cee56fcf628424d96005f89ba799
2017-02-16convert ErrorCode to scoped enumNoel Grandin4-162/+132
and drop unused enumerators Change-Id: I7330ebf8feead7b67e67f73ba942979e4756269d
2017-02-16convert WarningCode to scoped enumNoel Grandin3-16/+4
and drop unused enumerators Change-Id: I212cf132c2406e85b44b1af552b0989cecbec162
2017-02-16remove unused PS_OpCompleted from ParseState enumNoel Grandin2-3/+0
Change-Id: I3a738e464051d0b810553bc62c8465d37505bc3c
2017-01-26Remove dynamic exception specificationsStephan Bergmann2-9/+5
...(for now, from LIBO_INTERNAL_CODE only). See the mail thread starting at <https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html> "Dynamic Exception Specifications" for details. Most changes have been done automatically by the rewriting loplugin:dynexcspec (after enabling the rewriting mode, to be committed shortly). The way it only removes exception specs from declarations if it also sees a definition, it identified some dead declarations-w/o-definitions (that have been removed manually) and some cases where a definition appeared in multiple include files (which have also been cleaned up manually). There's also been cases of macro paramters (that were used to abstract over exception specs) that have become unused now (and been removed). Furthermore, some code needed to be cleaned up manually (avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no configurations available that would actually build that code. Missing @throws documentation has not been applied in such manual clean-up. Change-Id: I3408691256c9b0c12bc5332de976743626e13960 Reviewed-on: https://gerrit.libreoffice.org/33574 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-01-25Remove junkStephan Bergmann1-5/+0
left over from 232c0fb700efd31eff8cfee896437c481582ed0f "#115784# idlc: fixed commandline option processing." Change-Id: I41f81b1223cf72c0fcf8e84cdc7016e3aebf0c9d
2017-01-25loplugin: unnecessary destructor forms..idlcNoel Grandin15-21/+0
Change-Id: I765e0fa61f8134a60e5ea24452c6bbcb3fa8b054 Reviewed-on: https://gerrit.libreoffice.org/33492 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-19New loplugin:dynexcspec: Add @throws documentation, idlcStephan Bergmann1-0/+3
Change-Id: I3c269d84906cc49d79d5f32f0dd3f15afd2f588e
2017-01-17no special support for MACOSX PPC in master for a while nowCaolán McNamara1-2/+0
Change-Id: I8d5dc878f41939e55ef8995d1da74548faa4711f
2017-01-09New loplugin:externvar: idlcStephan Bergmann2-4/+1
Change-Id: I7b892efd6a5267c228c4cf17e80fac82628fbb64
2016-12-20bootstrap building with --disable-dynloading on standard linuxCaolán McNamara1-0/+1
Change-Id: I5baf70f0053612cba8b74f54aff11ce25cdeb95a Reviewed-on: https://gerrit.libreoffice.org/32202 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-11-29Rewrite some (trivial) assignments inside if/while conditions: idlcStephan Bergmann2-8/+7
Change-Id: I6be338f54dd8e6912e48258c0a2e075dc69b2893
2016-11-08loplugin:expandablemethods in hwpfilter..linguisticNoel Grandin2-3/+1
Change-Id: I62ae20ab4a47b3b7e2b0d503cedcad3319cc9c85 Reviewed-on: https://gerrit.libreoffice.org/30683 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-08loplugin:unnecessaryvirtual in hwpfilter..rscNoel Grandin4-11/+11
Change-Id: I2e9df8223d503b813b4c458747e8c44bb8ef8868 Reviewed-on: https://gerrit.libreoffice.org/30661 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-02loplugin:oncevar in helpcompiler..reportdesignNoel Grandin1-4/+2
Change-Id: I2dc57931fb230953c285aeb18f57c0a41fedafcb Reviewed-on: https://gerrit.libreoffice.org/30463 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-19loplugin:expandablemethodds in hwpfilter..linguisticNoel Grandin4-6/+2
Change-Id: If20fd4a6cf8a8e005804dbb7caf41cce73d587a5 Reviewed-on: https://gerrit.libreoffice.org/30016 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-16clang-cl loplugin: idlcStephan Bergmann1-1/+1
Change-Id: Idcd117aa896779bb5ebdfa33c24d5e374dd943cf Reviewed-on: https://gerrit.libreoffice.org/29861 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-10-13tdf#96099 Reduce no of typedefs used for trivial containersAsela Dasanayaka6-23/+20
Removed various pinter typedefs in idlc module Change-Id: Id850558a4550085d47a5e1122b1ce871f15956f2 Reviewed-on: https://gerrit.libreoffice.org/29754 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-06Simplify AstExpression::compareStephan Bergmann3-31/+4
...to only work with LONG values, as it is only used to compare enumerator values. (But keep its general defensive-programming air that's so prevalent across the idlc code base; not sure whether it could rightfully be tightened, or whether this might be needed in parser's error recovery.) Change-Id: I15f1700834f9397f3c2e0ffdb00e2abeecb734f9
2016-09-24we shouldn't need explicit lt_rtl_OUString, etc things anymoreCaolán McNamara1-9/+1
Change-Id: Ibeec3fcc353e07e61fb2c838b318e0a04081ce2c
2016-09-19loplugin:unusedenumvaluesNoel Grandin1-4/+3
Change-Id: I9dcc9f73af6db5b4f7cc946bc28931e5c230b34c Reviewed-on: https://gerrit.libreoffice.org/29012 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-13loplugin:override: No more need for the "MSVC dtor override" workaroundStephan Bergmann20-20/+20
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-08-12loplugin:unusedenumconstants in forms..sotNoel Grandin1-1/+0
Change-Id: Ic445e1bdd012c32ef7d84aec9df908467c3296a7 Reviewed-on: https://gerrit.libreoffice.org/28055 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-08loplugin:unnecessaryvirtualNoel Grandin1-1/+1
Change-Id: If25d9307efda5f57b0f80a0cf5c2c5cab6a752d6 Reviewed-on: https://gerrit.libreoffice.org/27981 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-15new loplugin unnecessary overrideNoel Grandin4-13/+0
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-05-27Get rid of unnecessary directory levels $D/inc/$DTor Lillqvist52-232/+232
Change-Id: Ibf313b8948a493043006ebf3a8281487c1f67b48 Reviewed-on: https://gerrit.libreoffice.org/25532 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2016-05-20Fix typo in codeAndrea Gelmini1-1/+1
Change-Id: I71ede9bf7d3f7de236dd161f30b36f52efec2c56 Reviewed-on: https://gerrit.libreoffice.org/25185 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2016-05-10Add SAL_FALLTHROUGH, where apparently appropriateStephan Bergmann1-0/+1
Change-Id: I07f247f003a5522e7d655f30f7c68d1b8f7225f2
2016-05-10Replace fallthrough comments with new SAL_FALLTHROUGH macroStephan Bergmann1-1/+1
...which (in LIBO_INTERNAL_ONLY) for Clang expands to [[clang::fallthrough]] in preparation of enabling -Wimplicit-fallthrough. (This is only relevant for C++11, as neither C nor old C++ has a way to annotate intended fallthroughs.) Could use BOOST_FALLTHROUGH instead of introducing our own SAL_FALLTHROUGH, but that would require adding back in dependencies on boost_headers to many libraries where we carefully removed any remaining Boost dependencies only recently. (At least make SAL_FALLTHROUGH strictly LIBO_INTERNAL_ONLY, so its future evolution will not have any impact on the stable URE interface.) C++17 will have a proper [[fallthroug]], eventually removing the need for a macro altogether. Change-Id: I342a7610a107db7d7a344ea9cbddfd9714d7e9ca
2016-04-26loplugin:nullptrStephan Bergmann1-103/+107
Change-Id: Id58f3320ff152286fa6b3268cdc9c2af2d7e068b
2016-04-14loplugin:passstuffbyref in variousNoel Grandin1-1/+1
Change-Id: I80070c83204e531c2f599f8a56193d6ffe0e5022
2016-02-17use consistent #define checks for the Windows platformNoel Grandin1-3/+3
stage 2 of replacing usage of various checks for the windows platform with the compiler-defined '_WIN32' macro In this stage we focus on replacing usage of the WIN macro Change-Id: Ie8a4a63198a6de96bd158ecd707dadafb9c8ea84 Reviewed-on: https://gerrit.libreoffice.org/22393 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-02-09Formatting changes across all modulesChris Sherlock1-4/+4
+ Removed comment cruft + Tab formatting in number of files + Some commented out code removed + Tab characters replaced with spaces + Newline cleanup in quite a few files + Tweak header guard #endifs Change-Id: I3208ff2f047da890edcc49b73389aca22442f5fc Reviewed-on: https://gerrit.libreoffice.org/22221 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2016-01-20loplugin:unusedmethodsNoel Grandin2-53/+0
Change-Id: Ib2dc804f55d1a96ae01f2cf31b7d55956040a72e Reviewed-on: https://gerrit.libreoffice.org/21603 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-12-24loplugin:unusedfieldsNoel Grandin2-2/+0
Change-Id: I979592adb978c3757a1e54615021ee424a2e02bf Reviewed-on: https://gerrit.libreoffice.org/20892 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-30FD_complex is unusedStephan Bergmann3-28/+11
...since 8e71d9400bd350d63723c5489ddaadb3d3610baf "Remove UNOIDL 'array' and 'union' vaporware from idlc" Change-Id: Id4cdef900667cdac466a41e47c189e2d25a62065
2015-11-20loplugin:unusedfields idl,idlcNoel Grandin1-1/+0
Change-Id: I39816fc613aadb5250eed39fd0c6830abe1cde2c
2015-11-10loplugin:nullptr (automatic rewrite)Stephan Bergmann21-151/+151
Change-Id: Ic42387288c96436915956ede2eb510b9c3fbc49b
2015-11-06loplugin:stringconstant: elide explicit ctor usage (automatic rewrite)Stephan Bergmann1-2/+2
Change-Id: I106ec424d4a2b32b91d9c4c70eb8a6670c20ede9
2015-10-12Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY codeStephan Bergmann9-13/+13
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-10-07clang-analyzer-deadcode.DeadStoresStephan Bergmann1-2/+2
Change-Id: I9c409cb2d7898ac6f395618cd950385cf036b002
2015-10-01loplugin:unusedmethodsNoel Grandin1-1/+0
- improvements to the plugin to find more method calls - improvements to python script to remove more false+ - fix the FORCE_COMPILE_ALL build flag to include code in the $WORKDIR Change-Id: I4d6015dcb9b9d60c26f0bcee8abad807177a7836 Reviewed-on: https://gerrit.libreoffice.org/19064 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-09-28Return unique_ptr from AstExpression::eval_* functionsStephan Bergmann2-12/+16
...generally, idlc leaks most memory, and e.g. trying to turn AstExpression::m_exprValue into a unique_ptr would fail because AstExpression::eval_symbol returns a pointer to an object "owned" elsewhere (but never actually deleted by its owner). So improvement of idlc ends here---for one, it does not improve anything to try and make idlc not leak memory, and for another, idlc is doomed to go away anyway. Change-Id: I36f54130c8bfd1933126ae7f8a982e50d9bc616e
2015-09-28m_exprValue cannot be non-null hereStephan Bergmann1-3/+0
...as, like the other private AstExpression::eval_* functions, eval_un_op is only called from AstExpression::evaluate if m_exprValue is null Change-Id: I812ea249d33a72f95b9692dc72ba6631ffbd4884
2015-09-28AstExpression::coerce always returned m_exprValue, so simplify its signatureStephan Bergmann2-19/+11
Change-Id: I4fa380bc7e8d5b3581468cb0e6417b99587a1e9f
2015-09-28Remove redundant AstExpression::eval_internalStephan Bergmann2-15/+8
Change-Id: I27c067adb2b09ad65a8449f2d88a9cdde149d4be
2015-09-28AstExpression::eval_internal always returns m_exprValueStephan Bergmann2-18/+17
Change-Id: I214fb3d14cef07357860a88fae1652a7d1a282b0