summaryrefslogtreecommitdiffstats
path: root/codemaker
Commit message (Collapse)AuthorAgeFilesLines
* cleanup osl/diagnose.h includesJochen Nitschke2017-05-094-4/+0
| | | | | | | | | | | | | | with command > git grep -l osl/diagnose.h *.cxx | xargs grep -L -w 'OSL_\w*' | xargs sed -i '/#include *\(<\|\"\)osl\/diagnose.h\(>\|\"\).*/d' headers need more work Change-Id: I906519ebbd47a04703b4fa5943b2f7abea7a97ab Reviewed-on: https://gerrit.libreoffice.org/37350 Tested-by: Jochen Nitschke <j.nitschke+logerrit@ok.de> Reviewed-by: Michael Stahl <mstahl@redhat.com>
* cppcheck: duplicateBreakJulien Nabet2017-04-301-1/+0
| | | | | | | Change-Id: Ia33dddfba35da3b495aae4edabe80b1a560674cd Reviewed-on: https://gerrit.libreoffice.org/37111 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
* tools: svstream.hxx needs only errcode.hxx & not errinf.hxxChris Sherlock2017-04-251-0/+1
| | | | | | | Change-Id: Ia28e35ae5af4f601e9a586a3deffbcd61702b0ca Reviewed-on: https://gerrit.libreoffice.org/36896 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
* More commit resurrectionStephan Bergmann2017-04-041-2/+2
| | | | | | (why do people do such silly reformatting?) Change-Id: Ie9d45d7dfccb000f53fa5e8dc456f1e7c033af18
* Move comment back to where it makes senseStephan Bergmann2017-04-041-3/+2
| | | | | | | It appertains to the preceding code, not the following, so it was indented for a subtle reason. Change-Id: I032033f04a1ca3a91024c11de74ef96527562b41
* make UNO enums scoped for internal LO codeNoel Grandin2017-04-042-477/+482
| | | | | | | | | | | | | | | | | | | | | | | | this modifies codemaker so that, for an UNO enum, we generate code that effectively looks like: #ifdef LIBO_INTERNAL_ONLY && HAVE_CX11_CONSTEXPR enum class XXX { ONE = 1 }; constexpr auto ONE = XXX_ONE; #else ...the old normal way.. #endif which means that for LO internal code, the enums are scoped. The "constexpr auto" trick acts like an alias so we don't have to use scoped naming everywhere. Change-Id: I3054ecb230e8666ce98b4a9cb87b384df5f64fb4 Reviewed-on: https://gerrit.libreoffice.org/34546 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
* loplugin:loopvartoosmallStephan Bergmann2017-02-252-2/+2
| | | | Change-Id: Ifd83cb180072304511ad8eb031dcf2a867e97e62
* remove unused KeywordsOnly from IdentifierTranslationModeNoel Grandin2017-02-171-3/+2
| | | | Change-Id: I7262e618a14fa9e025d269b560da752e3200309d
* Remove MinGW supportStephan Bergmann2017-02-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | In OOo times, there'd originally been efforts to allow building on Windows with MinGW. Later, in LO times, this has been shifted to an attempt of cross- compiling for Windows on Linux. That attempt can be considered abandoned, and the relevant code rotting. Due to this heritage, there are now three kinds of MinGW-specific code in LO: * Code from the original OOo native Windows effort that is no longer relevant for the LO cross-compilation effort, but has never been removed properly. * Code from the original OOo native Windows effort that is re-purposed for the LO cross-compilation effort. * Code that has been added specifially for the LO cross-compilation effort. All three kinds of code are removed. (An unrelated, remaining use of MinGW is for --enable-build-unowinreg, utilizing --with-mingw-cross-compiler, MINGWCXX, and MINGWSTRIP.) Change-Id: I49daad8669b4cbe49fa923050c4a4a6ff7dda568 Reviewed-on: https://gerrit.libreoffice.org/34127 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* Remove newly-unnecessary #includes from cppumaker-generated filesStephan Bergmann2017-02-085-70/+72
| | | | | | | | | | | | | | | ...after e57ca02849c3d87142ff5ff9099a212e72b8139c "Remove dynamic exception specifications" dropped uses of UNO exception types from those generated files. This needed first adapting client code that implicitly depended on those #includes in the generated files it included ("Add missing #includes": 6dce9c6757823b9e89863716ae70ff4e8ddd4e60, a34d9150b419ee7471b96599d877ff1091d6b567, fed3783e77e00635e50622e7229b06c9e25451f1). Change-Id: Ia1defda2d586b69092f53feef3644875192cbea4 Reviewed-on: https://gerrit.libreoffice.org/34014 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* loplugin:useuniqueptr extend to check local varsNoel Grandin2017-02-013-12/+9
| | | | | | | | | | | just the simple and obvious case for now, of a local var being allocated and deleted inside a single local block, and the delete happening at the end of the block Change-Id: I3a7a094da543debdcd2374737c2ecff91d644625 Reviewed-on: https://gerrit.libreoffice.org/33749 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
* Remove dynamic exception specificationsStephan Bergmann2017-01-265-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | ...(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>
* loplugin: unnecessary destructor: basctl..codemakerNoel Grandin2017-01-242-4/+0
| | | | | | | Change-Id: Iadcfa9bc4fe9efb8d24d6d6afaf2b9b3def0bc3c Reviewed-on: https://gerrit.libreoffice.org/33452 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
* Remove dynamic exception specifications from cppumaker-generated codeStephan Bergmann2017-01-201-51/+5
| | | | | | | | | | | | | | See the mail thread starting at <https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html> "Dynamic Exception Specifications" for details. This leaves some #include <...Exception.hpp> in the generated code that are no longer needed by the generated files themselves. But C++ implementation classes still use dynamic exception specifications and usually don't repeat the relevant #includes, so postpone removal until the implementation classes are cleaned up in a later step. Change-Id: Ifb7df3bb12f7f10c655b85cb0626afe5050479a4
* loplugin:stringconstant: handle OStringBuffer::appendStephan Bergmann2017-01-111-1/+1
| | | | Change-Id: I283da52c0ee2b63c19e31e9a61ab24997c037a6a
* bootstrap building with --disable-dynloading on standard linuxCaolán McNamara2016-12-202-4/+8
| | | | | | | 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>
* Delete the "Any-to-Any" template specializations for LIBO_INTERNAL_ONLYStephan Bergmann2016-11-211-4/+6
| | | | | | | | | | | | | | | | | | | | | | | i.e., css::uno::Any function template specializations Any::has<Any>() const Any::get(Any const &) const operator >>=(Any const &, Any &) operator <<=(Any &, Any const &) that don't make much sense (the first is always true, the rest can be replaced with operator =, which additionally supports move semantics). For 3rd-party compatibility, do this only for LIBO_INTERNAL_ONLY, however. However, some generic template code did benefit from operator >>= working also for Any, so make up for that with a new (LIBO_INTERNAL_ONLY, given that operator >>= still covers if fine for !LIBO_INTERNAL_ONLY) fromAny, complementing the existing toAny. Change-Id: I8b1b5f803f0b909808159916366d53c948206a88 Reviewed-on: https://gerrit.libreoffice.org/30022 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
* clang-cl loplugin: codemakerStephan Bergmann2016-10-161-1/+1
| | | | | | | Change-Id: I1e11ea28d90a5ee47a0ad6d302724b226ef8440b Reviewed-on: https://gerrit.libreoffice.org/29877 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* Don't allow O[U]StringBuffer in string concatenationStephan Bergmann2016-10-121-1/+1
| | | | | | | | | | | | | | | ...as OStringBuffer b("foo"); b = "bar" + b; doesn't work as one might expect (see the mail thread starting at <https://lists.freedesktop.org/archives/libreoffice/2016-October/075464.html> "concat of OUStringBuffer". That feature was LIBO_INTERNAL_ONLY, anyway. And of the affected places, MethodDescriptor::getSignature (codemaker/source/javamaker/javatype.cxx) was the only one that would actually have benefitted. Change-Id: Ib84266f43e40c42c2e428f0c0616db8cfa90adff
* cid#1371162 etc.: Move semantics for cppumaker-generated UNO exception classesStephan Bergmann2016-09-231-5/+6
| | | | | | | | | | | | | | | For UNO ABI reasons, these classes need to be CPPU_GCC_DLLPUBLIC_EXPORT (so their RTTI symbols get exported), so they are careful to explicitly declare any special member functions that would otherwise be declared implicitly, to mark them CPPU_GCC_DLLPRIVATE. But for LIBO_INTERNAL_ONLY, we always use -fvisibility-inlines-hidden (except for MSVC, where it doesn't matter, as CPPU_GCC_DLLPRIVATE expands to nothing there, either), so can leave those functions implicitly declared, so not to prevent move ctor and move assign op from being implicitly declared. This covers cid#s 1371143, 1371162, 1371185, 1371189, 1371290, and 1371308. Change-Id: I468088750a02f85a4790d956c37f4c30de03f00c
* loplugin:override: No more need for the "MSVC dtor override" workaroundStephan Bergmann2016-09-132-2/+2
| | | | | | | | | | | | | | | | | 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
* tdf#101185 OString concatanations for efficiently codingnadith2016-08-011-4/+2
| | | | | | | | | example of bug fixed Change-Id: Id9f911fa1ec43425018b00af5172e23be1274638 Reviewed-on: https://gerrit.libreoffice.org/27705 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
* improve passstuffbyref return analysisNoel Grandin2016-07-271-1/+1
| | | | | | | Change-Id: I4258bcc97273d8bb7a8c4879fac02a427f76e18c Reviewed-on: https://gerrit.libreoffice.org/27317 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
* tdf#100726: Improve readability of OUString concatenationsArnold Dumas2016-07-112-29/+29
| | | | | | | Change-Id: I31877a43e6fe3e9d6b36278673d40f3b14325972 Reviewed-on: https://gerrit.libreoffice.org/27092 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
* clang-tidy performance-implicit-cast-in-loopStephan Bergmann2016-07-063-5/+5
| | | | | | | ...where the first component of the pair returned by the iterator would be const, so an implicit conversion would be required. Change-Id: I62b6ddd799261e1dd63ea5c42a85d8b071f8b8b7
* loplugin:singlevalfields in codemakerNoel Grandin2016-06-242-6/+1
| | | | Change-Id: I77e6ed891f4712aadb9085549d7699435c2da558
* Silence -Werror,-Wimplicit-fallthrough under NDEBUGStephan Bergmann2016-05-122-9/+7
| | | | Change-Id: I6abfef139197379f04e1a9df80e974c5d4021890
* Silence -Werror,-Wimplicit-fallthrough under NDEBUGStephan Bergmann2016-05-121-2/+1
| | | | Change-Id: Id6dd53d8802f19fd7b78d4613ba2085d093a35be
* Replace fallthrough comments with new SAL_FALLTHROUGH macroStephan Bergmann2016-05-104-4/+4
| | | | | | | | | | | | | | | | ...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
* clean-up: unused using declarations and includesJochen Nitschke2016-04-181-2/+0
| | | | | | | | | | | | | | Searched source for using declarations. Checked if those symbols reappear in the source file, even in comments or dead code but not in #include statements. If they don't reappear, remove the declaration. Remove includes whose symbol got removed. Change-Id: Ibb77163f63c1120070e9518e3dc0a78c6c59fab0 Reviewed-on: https://gerrit.libreoffice.org/24148 Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de> Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
* tdf#94306 replace boost::noncopyable in cppuhelperJochen Nitschke2016-04-082-5/+11
| | | | | | | | | | | and related modules. Replace with C++11 delete copy-constructur and copy-assignment. Change-Id: I18aa9fe4ff696f9b5472cbe4cd0097cb174618b7 Reviewed-on: https://gerrit.libreoffice.org/23904 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
* tdf#97966 Drop 'static' keywordsWastack2016-04-011-1/+1
| | | | | | | | | Including no keywords from extern "C" blocks Change-Id: Id0304994a692f1004993dda2ffd7fb819ab8e8d0 Reviewed-on: https://gerrit.libreoffice.org/23670 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
* loplugin:unuseddefaultparams variousNoel Grandin2016-03-031-10/+3
| | | | | | | Change-Id: Ibf8489c957b307156689de4c7cb8440ddd4e4546 Reviewed-on: https://gerrit.libreoffice.org/22852 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
* convert codemaker::UnoType::Sort to scoped enumNoel Grandin2016-02-249-385/+384
| | | | Change-Id: I70a84f777e714bcc20c2d7b06b918e3be0f3ce4a
* convert codemaker::cpp::IdentifierTranslationMode to scoped enumNoel Grandin2016-02-242-10/+10
| | | | Change-Id: I17f7a2f8f89166c5a51be4ee15986d21f1cb24b3
* [API CHANGE] add operator==/!= to UNO structsNoel Grandin2016-02-111-0/+63
| | | | | | | | | this is useful now that we are storing UNO structs in std::vector Change-Id: Ic558bcd669bd2b3cdf9eb8393269eb906ac52369 Reviewed-on: https://gerrit.libreoffice.org/22257 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
* convert to range-based for loops in codemaker/Noel Grandin2016-02-099-558/+359
| | | | Change-Id: Ifa521f34a8d9565bb61743c4a996bcba37e95ec2
* rename dumpHFile to dumpHdlFileNoel Grandin2016-02-091-7/+7
| | | | | | since we create .hdl files, not .h files Change-Id: I0faf0eda459c5353c9ebf1417fd65a17748dc591
* rename dumpHxxFile to dumpHppFileNoel Grandin2016-02-091-20/+20
| | | | | | since we generate .hpp files, not .hxx files Change-Id: I694364c9b0e7c78777201a031435c40b10cfd1ed
* Remove excess newlinesChris Sherlock2016-02-093-3/+0
| | | | | | | | | | | | | | | | | | | A ridiculously fast way of doing this is: for i in $(pcregrep -l -M -r --include='.*[hc]xx$' \ --exclude-dir=workdir --exclude-dir=instdir '^ {3,}' .) do perl -0777 -i -pe 's/^ {3,}/ /gm' $i done Change-Id: Iebb93eccbee9e4fc5c4380474ba595858a27ac2c Reviewed-on: https://gerrit.libreoffice.org/22224 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
* Fix typosAndrea Gelmini2016-01-101-1/+1
| | | | | | | Change-Id: I9a5940027423ff0791fa7da0b79b617412ce6b86 Reviewed-on: https://gerrit.libreoffice.org/21209 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
* Reduce space needed for string literalsStephan Bergmann2015-12-011-22/+16
| | | | | | | | | | ...as had been done in 68ba6ddef50ec4aa92f55fa610c84c9f0d134e67 "codemaker: Allow compiler to share these generated strings" and 2188a7ac2eb37aee89f8f305bdf99db9b05b20bf "Reduce the amount of strings in the release builds," and then undone in 759eb79d886b70c7e7ab86b48e63d1b627b7dc44 "give useful details in non-debug mode too" Change-Id: Ic888d6c47449da3b3a084f863a7e0526f201a967
* give useful details in non-debug mode tooCaolán McNamara2015-11-271-4/+2
| | | | Change-Id: I5a3be096ad4417735254abb387b21029e636f5b8
* mark UNO structs as SAL_WARN_UNUSED, where possibleNoel Grandin2015-11-261-2/+63
| | | | Change-Id: Ie3de518f60c9f1313c68df54dbdc1fb2804f1f0d
* loplugin:nullptr (automatic rewrite)Stephan Bergmann2015-11-1010-118/+118
| | | | Change-Id: Ic33cbe3feed8aec9f7578aea2cbd809169d9b8c8
* coverity#1338267 Uncaught exceptionCaolán McNamara2015-11-061-0/+4
| | | | Change-Id: Id886abbafe7501e17eaae5b2ebf0bd065745c1ad
* coverity#1338254 Uncaught exceptionCaolán McNamara2015-11-061-1/+5
| | | | Change-Id: Ie7cf971b3d0c67f33a1b82ff12a8e25506bf0cd0
* tdf#94269: Replace "n" prefix for bool variables with "b"Benjamin Ni2015-11-025-63/+63
| | | | | Change-Id: I178545792c7354a362658ac7ef8b1d4cf0865797 Signed-off-by: Michael Stahl <mstahl@redhat.com>
* UNO: no need to use OUString constructor when calling createInstanceNoel Grandin2015-10-301-4/+4
| | | | | | | Change-Id: I37da28539b94706574116d0fff5f008aabfb5526 Reviewed-on: https://gerrit.libreoffice.org/19682 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
* loplugin:defaultparamsStephan Bergmann2015-10-201-2/+2
| | | | Change-Id: I3d9d96d1ce91471b7c0e73df848a4893152cd637