summaryrefslogtreecommitdiff
path: root/unoidl
AgeCommit message (Collapse)Author
2014-11-21Silence unhelpful cid#1213376 untrusted loop bound warningsStephan Bergmann
Change-Id: I0a1fcebb268bea942d4bc2d6bf835c3ffb24df3e
2014-11-20This should ideally be consistency-checked in UnoidlProviderStephan Bergmann
...but is not, for performance reasons. Change-Id: I2518eb1f1a2f84cfd836c390a418a2fcb516b82c
2014-11-19Guard against cyclic entity dependenciesStephan Bergmann
...in unoidl-read, although it would be better (but more expensive at start- up) to check consistency in unoidl::Manager. Change-Id: I5f5894fcd51af3aa999fe30621f52bfd11d0e610
2014-11-19Check entity and type name syntaxStephan Bergmann
(For types, only checks their syntax, but not whether they semantically fit in a certain situation, e.g., "boolean" cannot be used as a base interface.) Change-Id: I12f617e74ca13ce2afcec8f611bfdb4912c62960
2014-11-19Check for recursive mapsStephan Bergmann
Change-Id: I50227c41c5b4c5c410939ddfa078b996b5804965
2014-11-19Revert "cosmetic 'en-passant'...."Stephan Bergmann
This reverts commit d4810a814c7c7f3db2df15b62367bd1edc7040f6. Change-Id: Ia062e070c7d7dac5cc4388d1c8e812fb97851d52
2014-11-18Avoid overflowStephan Bergmann
Change-Id: Ia80682aeb87225b9bde7398186e121b1d3bdc2ad
2014-11-18Check that UNOIDL enum has membersStephan Bergmann
Change-Id: I5b362ad374dad5fd4a79b8a7706defb749e25eb3
2014-11-18Avoid overflowStephan Bergmann
Change-Id: I4afe86dc29788a7b2d2d9c438f182726f80b1cbd
2014-11-05coverity#1103678 Unchecked dynamic_castCaolán McNamara
Change-Id: Ic87cc3d968447051e52012e59d92e95280d9d35a
2014-10-24coverity#1242422 Unchecked dynamic_castCaolán McNamara
Change-Id: If5e8b90f32c167bafeb3649f4bc6c31198635947
2014-07-10cosmetic 'en-passant'....Norbert Thiebaud
Change-Id: I9a787065898004ece4bd55839c563b7395e3a314
2014-07-10coverity#1224979 Missing break in switchCaolán McNamara
Change-Id: I539ba11497a8c7384b5ca8ee4792548dca139811
2014-07-10coverity#1224980 Missing break in switchCaolán McNamara
Change-Id: I17379f596fd8b48bd1015538eacc5265cfa83a82
2014-07-07fix build error 'strlen' is not a member of 'std' locallyDouglas Mencken
Change-Id: I587ef2c38fd9377eef2073a49cd8497b2bd4bf9f Reviewed-on: https://gerrit.libreoffice.org/10076 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2014-06-27tweak assert so comment appears in abort messageCaolán McNamara
Change-Id: Ibf78e5cd1620f0b61cae030e3870be4a6f87e71d
2014-05-23Remove circular references between unoidl::Manager and its providersStephan Bergmann
Change-Id: Ic6ad3e2c7f69dd123077a913f35f1971f1e8ca13
2014-05-23Combine unoidl::loadProvider and unoidl::Manager::addProviderStephan Bergmann
Change-Id: I1240656cc2a4d713c838eb80fa90ce3485aad614
2014-04-29coverity#1210179 Uninitialized pointer fieldCaolán McNamara
Change-Id: I09534eab67c0ae38cd6965c3b63227d92b72c646
2014-04-11unoidl-check: Also check for invalid UNOIDL identifiersStephan Bergmann
...but only in those parts of registry B that are not also in registry A. That way, we can detect newly introduced violations while ignoring the old (published) violations for backwards compatibility. Change-Id: Ifb8ea98fffca29647aa6677a5ade86e5b194ddee
2014-03-26First batch of adding SAL_OVERRRIDE to overriding function declarationsStephan Bergmann
...mostly done with a rewriting Clang plugin, with just some manual tweaking necessary to fix poor macro usage. Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
2014-03-18Find places where OUString and OString are passed by value.Noel Grandin
It's not very efficient, because we generally end up copying it twice - once into the parameter and again into the destination OUString. So I create a clang plugin that finds such places and generates a warning so that we can convert them to pass-by-reference. Change-Id: I5341a6ea9e3190f4b4c05c42c85595e3dcd83361
2014-02-24Yet another one undefined comparison of 'const' and a 'non-const' iteratorsDouglas Mencken
Fixes: no match for ‘operator!=’ in ‘i != std::vector<_Tp, _Alloc>::rend() [with _Tp = rtl::OUString, _Alloc = std::allocator<rtl::OUString>]()’ Change-Id: I7b4ba07ebe51c73893a3d6b77dcf5681b7638efb Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2014-02-18tests belong to check targetBjoern Michaelsen
- the CustomTarget seems to be a test, not a build target - worse, it is .PHONY - ... and eats 30% of the top-level build-nocheck time alone - so hopefully, we can we at least make it a check target Change-Id: I113777cbd849aab9e8d0a77184e31194bc07232e Reviewed-on: https://gerrit.libreoffice.org/8111 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2014-01-08OK to add optional bases to published old-style servicesStephan Bergmann
Change-Id: Ie6f5f2a634171d9618f3229bcc18ad48fff80d35
2013-12-20typo fixesAndras Timar
Change-Id: Ia5f104bfd707bcf4e159c78ca2764c861fb0b6d9
2013-11-27Silence false "may be used uninitialized" warningsStephan Bergmann
Change-Id: Ie708de4a7fbd34e1ab3c417688de79d5bdf0e0b8
2013-11-26Fix unoidl sourceprovider old-style service duplicate member checksStephan Bergmann
Change-Id: Ifa19a427543e76053e9b249c479e1e13f3599bcc
2013-11-26Remove outdated TODO (@deprecated annotation are handled fine)Stephan Bergmann
Change-Id: Iab32e6974a181e437630aaae2ea73eb6062ec0ee
2013-11-26Duplicate base checking code already covers check for opt base != XInterfaceStephan Bergmann
Change-Id: Icd47d87f93641a0b24a96a4be8d3d120f0405f2d
2013-11-25Fix unoidl sourceprovider interface base and member checksStephan Bergmann
...and enable tests shared with idlc Change-Id: I422b16c9b2636835d276cc2085cb640073894c97
2013-11-22Fix unoidl sourceprovider polystruct argument checksStephan Bergmann
Change-Id: Ib7ee3188b87b9b4216214b65347e34970e1b92a5
2013-11-22Fix unoidl sourceprovider typedef checkStephan Bergmann
Change-Id: I7faa689c803f83687cfcc39dc7c4fd145584e849
2013-11-22Fix unoidl sourceprovider recursive struct/exception member checkStephan Bergmann
Change-Id: Icd156745da10011611590b6b62cd0ec2df2b1266
2013-11-22Fix unoidl sourceprovider "published" checksStephan Bergmann
Change-Id: I93b9fcc2b20ed7a7c160a9ef3294b6e578678f53
2013-11-05fixincludeguards.sh: uno*Thomas Arnhold
Change-Id: I8fb3c25cd583b688104a0ee8620696e7b2958ab5
2013-10-24fdo#67725 unoidl::AggregatingCursor must wrap modules for aggregation, tooStephan Bergmann
Otherwise cppuhelper::TypeManager::createTypeDescriptionEnumeration, sitting on top such an AggregatingCursor, will miss any entities from provider P' in module M if any previous provider P contains the same module M. That happened when climaker generates cli_oootypes.dll, where the enumeration missed everything from offapi in top-level module "com" because it had already seen udkapi's "com", and only reported the handful of entities under offapi's other top-level module "org" (which does not appear in udkapi). Change-Id: If538391bde22bcc346417b5988cf12023f0d4172
2013-10-15Allow starts-/endsWith* to also return the rest of the matched stringStephan Bergmann
...as there are many cases where the code later wants to obtain this part, and esp. for the string literal variants it is awkward to calculate the length of the literal again if this is coded with a following copy() call. Adapt some code to use this new feature. (Strictly speaking, the @since tags for the---backwards-compatibly---modified functions are no longer accurate of course. Also, clean up some sal_Bool and SAL_THROWS(()) that are unnecesssary cargo-cult here, and where the clean-up should have no practical compatibility consequences.) Change-Id: I43e5c578c8c4b44cb47fd08f170b5c69322ad641
2013-10-10Silence some false Covertiy scan warnings about uninitialized membersStephan Bergmann
Change-Id: I5e1d870a60f4c0d4b805c615d0e3c958e856bf8c
2013-10-10Make changes of interface method parameter names a hard failureStephan Bergmann
...instead of a warning, now that all the deliberate changes have been addressed. Change-Id: I6075a36a560bd68826c6840992eefb8f51b939ba
2013-09-20keep C++03 compilers happyStephan Bergmann
Change-Id: I62af395105f51e802b874424b993dcf7e687a78b
2013-09-20Reject "too similar" service constructorsStephan Bergmann
Change-Id: Ie81e9994084b5a2f44a436c764318ea6e5049faf
2013-09-20Certain UNOIDL typedefs are forbidden for historic reasonsStephan Bergmann
Change-Id: I0fb4ca4e529f5f35e3619bab5e89348dd9c67faf
2013-09-19Directly build UNOIDL .rdb files from .idl filesStephan Bergmann
...via unoidl-write and the new source-format registry provicers, instead of using idlc to produce .urd files, regmerge to merge them into legacy .rdb files, and unoidl-write to translate those to new UNOIDL .rdb files. gb_UnoApi and gb_InternalUnoApi ctors take an additional argument now that is the path (below $(SRCDIR)) of the source-format registry from which to obtain UNOIDL entity definitions. It can either be an .idl file (in which case no *_add_idlfiles calls should be used and the resulting .rdb will contain all the entities from that one .idl file; used in some tests to conveniently define all test-specific entities in a single file) or a directory denoting the root of an .idl file tree (in which case *_add_idlfiles calls specify the entites to include in the resulting .idl file). (In the first case, the generated .rdb file needs to depend on that single .idl file, so the gb_UnoApiTarget ctor contains a dependency on that additional argument, which happens, as a side effect, to trigger rebuilds in the second, tree-based case when addition/removal of .idl files in the tree causes updates of directory time-stamps.) UnoApiPartTarget and all the dependency-tracking logic based on .urd files in solenv/gbuild/UnoApiTarget.mk is gone. Generation of an .rdb file now depends on its source registry (see previous paragraph) and all the .idl files specified with *_add_idlfiles (in the second, tree-based case above). A consequence of that is that gb_UnoApi_add_idlfile, -_nohdl, and -_noheader all do the same now. I left them in for now anyway, maybe they become relevant again when the use of cppumaker is changed to read directly from a source-format registry instead of going via a .rdb registry. The legacy tools idlc, regcompare, regmerge, and regview are still contained in the URE or SDK for now. cb344cd59e1ddb7c6db66dbd9263b4755969d4ba "Revert 'Looks like idlc resolved typedefs inside sequence<...>'" is re-reverted as now "the current offapi.rdb is generated via unoidl-write instead of idlc." Change-Id: I3d9d92f17326bc9f49dd934c85aab6a17951d06d
2013-09-19Update unoidl/READMEStephan Bergmann
Change-Id: Ib4cc138ab4c6de0d3d3a8ad55e40ba9ca30c15ae
2013-09-19Fix indentationStephan Bergmann
Change-Id: I7814547ef29ec728a5a815196427b661bf285256
2013-09-19-Werror,-Wunused-parameterStephan Bergmann
Change-Id: I331d769132d3b18c870c70c7abcbd9539135af55
2013-09-19Prevent conflicts on case-preserving file systemsStephan Bergmann
Change-Id: Ia40f0ce43086fd73cba60011001640a945fb3e26
2013-09-19Handle special case -(2^63) correctlyStephan Bergmann
Change-Id: Ia3d8931341b2d47ef76265d94410d83f51a068c0
2013-09-19typoStephan Bergmann
Change-Id: I79660ddd3ec9f78452fa484b33a9720cbf8ddc80