summaryrefslogtreecommitdiff
path: root/registry/source/reflread.cxx
AgeCommit message (Collapse)Author
2022-06-21registry: remove unnecessary commentsChris Sherlock
Change-Id: I03b49dcf4bb668b0e4967eb4e88639a5a7e36c8e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128174 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Jenkins
2022-06-11[API CHANGE] Deprecate css.registry.XSimpleRegistry::mergeKeyStephan Bergmann
...and let its implementations just throw a RuntimeException, now that regmerge has been removed in "[API CHANGE] Remove deprecated idlc and regmerge from the SDK". Deprecate css.registry.MergeConflictException along with it (though stoc/source/implementationregistration/ still uses it internally). And remove the previously unused include/registry/writer.hxx along with the newly unused include/registry/writer.h, RegistryTypeWriter, and RegistryTypeReader. Change-Id: I10fd286617975dc0ef9f74460a3a3eab8060939d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123615 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-07-01Upcoming improved loplugin:staticanonymous -> redundantstatic: registryStephan Bergmann
Change-Id: Id96932c7944b5136f5fa7b5f698b8bb3b616e9ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97633 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-12Revert "loplugin:constfields in package..registry"Noel Grandin
This reverts commit 31138ff7729cbf179079a5e635d3a823e2971f08. Now that we know that making fields has negative side effects like disabling assignment operator generation. Change-Id: I3f1ae65532f441c8be5ebca5866b8a1e1c69318c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90363 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-19sal_Char->char in oox..registryNoel Grandin
Change-Id: Icc7f2a32696c30317c1ee77ef39d682d5f5a80b9 Reviewed-on: https://gerrit.libreoffice.org/85512 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-22Extend loplugin:external to warn about classesStephan Bergmann
...following up on 314f15bff08b76bf96acf99141776ef64d2f1355 "Extend loplugin:external to warn about enums". Cases where free functions were moved into an unnamed namespace along with a class, to not break ADL, are in: filter/source/svg/svgexport.cxx sc/source/filter/excel/xelink.cxx sc/source/filter/excel/xilink.cxx svx/source/sdr/contact/viewobjectcontactofunocontrol.cxx All other free functions mentioning moved classes appear to be harmless and not give rise to (silent, even) ADL breakage. (One remaining TODO in compilerplugins/clang/external.cxx is that derived classes are not covered by computeAffectedTypes, even though they could also be affected by ADL-breakage--- but don't seem to be in any acutal case across the code base.) For friend declarations using elaborate type specifiers, like class C1 {}; class C2 { friend class C1; }; * If C2 (but not C1) is moved into an unnamed namespace, the friend declaration must be changed to not use an elaborate type specifier (i.e., "friend C1;"; see C++17 [namespace.memdef]/3: "If the name in a friend declaration is neither qualified nor a template-id and the declaration is a function or an elaborated-type-specifier, the lookup to determine whether the entity has been previously declared shall not consider any scopes outside the innermost enclosing namespace.") * If C1 (but not C2) is moved into an unnamed namespace, the friend declaration must be changed too, see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71882> "elaborated-type-specifier friend not looked up in unnamed namespace". Apart from that, to keep changes simple and mostly mechanical (which should help avoid regressions), out-of-line definitions of class members have been left in the enclosing (named) namespace. But explicit specializations of class templates had to be moved into the unnamed namespace to appease <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92598> "explicit specialization of template from unnamed namespace using unqualified-id in enclosing namespace". Also, accompanying declarations (of e.g. typedefs or static variables) that could arguably be moved into the unnamed namespace too have been left alone. And in some cases, mention of affected types in blacklists in other loplugins needed to be adapted. And sc/qa/unit/mark_test.cxx uses a hack of including other .cxx, one of which is sc/source/core/data/segmenttree.cxx where e.g. ScFlatUInt16SegmentsImpl is not moved into an unnamed namespace (because it is declared in sc/inc/segmenttree.hxx), but its base ScFlatSegmentsImpl is. GCC warns about such combinations with enabled-by-default -Wsubobject-linkage, but "The compiler doesn’t give this warning for types defined in the main .C file, as those are unlikely to have multiple definitions." (<https://gcc.gnu.org/onlinedocs/gcc-9.2.0/gcc/Warning-Options.html>) The warned-about classes also don't have multiple definitions in the given test, so disable the warning when including the .cxx. Change-Id: Ib694094c0d8168be68f8fe90dfd0acbb66a3f1e4 Reviewed-on: https://gerrit.libreoffice.org/83239 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-02-15tdf#42949 Fix IWYU warnings in registry/Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I819bb44e36bdb6ec671cf11bd779085767d82fd0 Reviewed-on: https://gerrit.libreoffice.org/67697 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2018-10-24remove more rtl::OUString and OString prefixesNoel Grandin
which seem to have snuck back in since the great rounds of removals. Change-Id: I85f7f5f4801c0b48dae8b50f51f83595b286d6a1 Reviewed-on: https://gerrit.libreoffice.org/62229 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-13loplugin:constfields in package..registryNoel Grandin
Change-Id: Ie139490f2b008bf294910d002af711f8f41fe76d Reviewed-on: https://gerrit.libreoffice.org/61727 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-06-12loplugin:constantparamNoel Grandin
Change-Id: Ia769b3176aea287cd57414d7ce8e88c6da43883e Reviewed-on: https://gerrit.libreoffice.org/55622 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-05-17loplugin:unusedfields in formula..registryNoel Grandin
Change-Id: I031654d8bb4f1788d364ef4f8d3bf7a05fadb148 Reviewed-on: https://gerrit.libreoffice.org/54454 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-27loplugin:constantparamNoel Grandin
Change-Id: I966dcf87be021520e7cc394338b9c0574bb8afee Reviewed-on: https://gerrit.libreoffice.org/53541 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-20loplugin:constantparamNoel Grandin
Change-Id: Ia58d8950b3b9e48bbe9f075b9fe1eed62d9abf0d Reviewed-on: https://gerrit.libreoffice.org/53188 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-15More loplugin:cstylecast: registryStephan Bergmann
Change-Id: I2c9436f5f9ea5ef3051d22310dee48ec39fad850
2018-01-15loplugin:useuniqueptr in comphelper,cppu,registryNoel Grandin
Change-Id: Ib353d901827e417498fe4f8e397f1a57c61a9736 Reviewed-on: https://gerrit.libreoffice.org/47794 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-12More loplugin:cstylecast: registryStephan Bergmann
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable loplugin:cstylecast for some more cases" plus solenv/clang-format/reformat-formatted-files Change-Id: I496dc091b46b6a67afe52eb12c07824f65f71212
2017-10-31loplugin:constantparam in oox,registry,reportdesignNoel Grandin
Change-Id: I914fa6c6ef2f660eb6b8570c9c5f86cef477be80 Reviewed-on: https://gerrit.libreoffice.org/44093 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-23loplugin:includeform: registryStephan Bergmann
Change-Id: I499856ba451c71bb53e99d74c5a89f1a185c9386
2017-10-20loplugin:constmethod in codemaker,registry,storeNoel Grandin
Change-Id: Ie75875974f054ff79bd64b1c261e79e2b78eb7fc Reviewed-on: https://gerrit.libreoffice.org/43540 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-17loplugin:constparams in store,registryNoel Grandin
Change-Id: I5633203b372a9abd0138a396958c235ea8aaf66d Reviewed-on: https://gerrit.libreoffice.org/40039 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-23loplugin:unusedfields in registry..saxNoel Grandin
Change-Id: Ie0e2ecaadb49273cb4e78bc894111523940e7c8e Reviewed-on: https://gerrit.libreoffice.org/39098 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-06Improved loplugin:redundantcast, static_cast on arithmetic types: registryStephan Bergmann
Change-Id: I68adf213b6c8c44ad3eaed4cf1e0e0db764739fd
2017-03-03Remove redundant 'inline' keywordStephan Bergmann
...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-10test coverity sanitizing in-source modellingCaolán McNamara
Change-Id: I31b1f021c414b26372c07a28c235bedb3e5a2b32
2017-01-25loplugin: unnecessary destructor oox..saxNoel Grandin
Change-Id: Ie12bfabc92bce04d702f3e77aa5896366e49245e Reviewed-on: https://gerrit.libreoffice.org/33509 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-03-17loplugin:constantparam in registryNoel Grandin
Change-Id: Ic3c60325a722422912d06fe21d072c5f5c4bccb1 Reviewed-on: https://gerrit.libreoffice.org/23322 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-01-10Fix typosAndrea Gelmini
Change-Id: I9a5940027423ff0791fa7da0b79b617412ce6b86 Reviewed-on: https://gerrit.libreoffice.org/21209 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
2015-11-10loplugin:nullptr (automatic rewrite)Stephan Bergmann
Change-Id: Ie5a37a49f1b1c08a20f89e167ca415fc645ed40d
2015-08-20new loplugin automemNoel Grandin
find places where we should be using std::unique_ptr Change-Id: I5b9defe778fdc4738ecea381215396874db59e66
2015-07-03Make RegistryTypeReader non-copyableStephan Bergmann
(and note the operator == vs. = typo) Change-Id: I4567927f3f702f8e74b168becce4002e84d5c7a0
2015-07-03Remove RegistryTypeReader_Api indirectionStephan Bergmann
Change-Id: I43710d057043a258ec9ab94bca0703434098e6c9
2015-07-03Remove unused functionsStephan Bergmann
Change-Id: Ib615ff7eb12232b0b83664af134744d96754ffd8
2015-07-03Move module-private includes from include/registry/ to registry/Stephan Bergmann
Change-Id: I72bdd6627a191a65d5c3b479c100e30442a8bb9e
2015-06-11cppcheck: noExplicitConstructorCaolán McNamara
Change-Id: Id6291335945a8f10cef3afd1a2b3bae65fdf4562
2015-04-22Various #include <sal/log.hxx> fixupsStephan Bergmann
rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it. Cleaned up some, but something like grep -FwL sal/log.hxx $(git grep -Elw \ 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF') -- \*.cxx) shows lots more files that potentially need fixing before the include can be removed from rtl/string.hxx and rtl/ustring.hxx. Change-Id: Ibf033363e83d37851776f392dc0b077381cd8b90
2015-04-15remove unnecessary use of void in function declarationsNoel Grandin
ie. void f(void); becomes void f(); I used the following command to make the changes: git grep -lP '\(\s*void\s*\)' -- *.cxx \ | xargs perl -pi -w -e 's/(\w+)\s*\(\s*void\s*\)/$1\(\)/g;' and ran it for both .cxx and .hxx files. Change-Id: I314a1b56e9c14d10726e32841736b0ad5eef8ddd
2015-04-09loplugin:salboolNoel Grandin
Change-Id: Id4194f4d5bb6fcf064985fddc6f7344a4d34ca04
2015-04-09fix windows and android buildsNoel Grandin
more 'extern C' fallout from my conversion of enum to scoped enum Change-Id: I4c9aabbfbd255775a8f3edc2b7c8c62647f539eb
2015-04-09convert RTReferenceType to scoped enumNoel Grandin
Change-Id: I8320f6f42d5579fbd09450ddca61c4c066de98e4
2015-04-09convert RTMethodMode to scoped enumNoel Grandin
Change-Id: I81599570698eb92abf14fa6386d8545c2031e863
2015-04-09convert RT_ACCESS fields to scoped enumNoel Grandin
Change-Id: Ifef0aaae6208f18c1352fef7c471deb60a97820d
2015-03-28Clean up C-style casts from pointers to voidStephan Bergmann
Change-Id: I192bc9653d8492a850a5e259e15782bd3bb24922
2015-03-26const_cast: convert some C-style casts and remove some redundant onesStephan Bergmann
Change-Id: I32d7a1d4fed6ef5c56f485cd92464f2d0960e5fd
2015-01-25loplugin:unreffunStephan Bergmann
Change-Id: Id7e0ddf60e32a27cb3922ae6c64feeec40f8e079
2015-01-25coverity#1266504 Useless callCaolán McNamara
Change-Id: I11a2760799937393bfa1a91c1d454ccb3c4027e4
2015-01-20Some more loplugin:cstylecast: registryStephan Bergmann
Change-Id: I5cfb42729b5d3d97076058edb108965f248f86af
2015-01-05Some loplugin:revisibility clean-upStephan Bergmann
Stumbled across such redundant visibility re-specifications when looking at the odd case of cppu_unsatisfied_iquery_msg declared CPPU_DLLPUBLIC in cppu/source/cppu/cppu_opt.cxx and used in inline code in include/com/sun/star/uno/Reference.hxx with only a declaration lacking CPPU_DLLPUBLIC visible, and wondering how that actually works on Windows. However, this plugin is probably not worth it being run all the time, so committing it to compilerplugins/clang/store/. Change-Id: Ibc3c4e7499213de1b419ce7eb85455cb832e1510
2014-11-18Fix memchr checksStephan Bergmann
(thanks caolan for spotting) Change-Id: I17093b4173b9a2fca2760240375bcb14313224ef
2014-11-17cid#1213388 etc.: Make reflread.cxx more robustStephan Bergmann
incl. revert of and proper fix for 8f69c7a11bf31f7134caf4e03fbcd4c6ef86382d "coverity#1213373 Use of untrusted scalar value," the data is tainted after all Change-Id: I19e4d544ccf6d02afe8d6e441cae6bbdadb8a6be
2014-11-17sal: clean up public headers with include-what-you-useMichael Stahl
Sadly cannot forward declare "struct {...} TimeValue;". rtl/(u)?string.hxx still include sal/log.hxx but removing osl/diagnose.h was painful enough for now... Change-Id: Id41e17f3870c4f24c53ce7b11f2c40a3d14d1f05