Age | Commit message (Collapse) | Author |
|
Change-Id: I22ee35d8c26ac119b35ba6c85c06199539b0c9d7
|
|
...originally the past-the-end checks in destination where always true, and thus
happend to work as intended for empty destionation, but
614e04019a672cdd61b86699d99250d80f169f95 broke that, so calling cppumaker w/o
-O was broken now.
Change-Id: I8d41dfe8d4c12e4a73a9782d4d5e7c9fa4d9df81
|
|
Change-Id: I507a5664e642c75f6e9e9fe0c95c97ea76a8e5b3
|
|
Change-Id: I8a1907bc4b8f2134efb15d38a0fb5176b4384317
|
|
Change-Id: Ia81069afa47fa5790b973247c68bead7de87d718
|
|
Change-Id: Icca819484e751864d146a893fe78e8ef2c36363b
|
|
This also means that this code now gets bounds checked in debug builds.
Change-Id: Id777f85eaee6a737bbcb84625e6e110abe0e0f27
|
|
This is both an optimisation and a cleanup.
This converts code like
aStr.indexOf("XX") == 0
to
aStr.startsWith("XX")
and converts code like
aStr.lastIndexOf("XXX") == aStr.getLength() - 3
to
aStr.endsWith("XXX")
Note that in general
aStr.lastIndexOf("X") == aStr.getLength() - 1
converts to
aStr.isEmpty() || aStr.endsWith("X")
so I used the surrounding context to determine if aStr could be empty
when modifying the code.
Change-Id: I22cb8ca7c2a4d0288b001f72adb27fd63af87669
|
|
...so that exceptions like std::bad_alloc need not be treated in C++
implementations of UNO interfaces to not cause std::unexpected. Of course, this
requires implementations to be adapted and actually mention std::exception in
their exception specifications.
Change-Id: Ie7f91e7ca47d8a81e3d0ba817e65d83c7823af75
|
|
...hopefully, all generated headers that use css (indirectly) include sal/types.h
Change-Id: Iaa40fa014d54b57b395eafda8b4f35ca395d55b0
|
|
Change-Id: Ic43628de53c5139ef43bb48723fb1e0788af1cd1
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...the list has been fixed now by copying its elements into an ENTRIES file and
running "unoidl-write udkapi/ @ENTITIES TEMP && unoidl-read TEMP >/dev/null" and
adding any reported unknown entities until it succeeds.
However, the updated list lead to deadlock when css.reflection.ParamInfo UnoType
resolves css.reflection.XIdlClass UnoType resolves css.reflection.XIdlMethod
UnoType resolves css.reflection.ParamInfo UnoType, so broke the circle by no
longer resolving the interface methods' return and parameter types in
InterfaceType::dumpMethodsCppuDecl (which is why those type infos are only
generated on demand anyway; looks like this had been a careless thinko in the
generation of comprehensive type info that had remained unnoticed all the time).
Change-Id: I50ef2fde16242298e055c6fa5971e70fad1a2b68
|
|
Change-Id: I13d668e92ea762e9888f8c1c4615eccad6a1ff1b
|
|
This reverts commit c4113906d7f15f8aa0eb385a4caf474b3505ede1, which is not
necessary after all with recent "Hook SourceProvider into unoidl::loadProvider."
|
|
Change-Id: I420847515b6b691ae81a249a8820cf9a3d132372
|
|
...just like javamaker.
Change-Id: I7634a65a948ca7abdb7ad75d0aeca8becb38ab87
|
|
Change-Id: I886c543d9de63595a9183f4e5f108f08b2ba25ef
|
|
...so mark them as @deprecated more thoroughly and always force them to zero.
Change-Id: I5db2dab924fc5a4145a0e5dd055b654985ce2ef9
|
|
...this was a regression introduced with
64b993e046f23baaacaff1572b7d2a816588b5ef "finish deprecation of
O(U)String::valueOf()" and it caused e.g. the value -0x100 of the enum member
css.i18n.TranliterationModules.IGNORE_MASK to be written as 4294967040 rather
than as -256. (Though the relevant code is dead ugly, for sure.)
Change-Id: Icb3d3365135bc2a07e438317b70abdf9d74d6d7a
|
|
Compiler plugin to replace with matching number(), boolean() or OUString ctor,
ran it, few manual tweaks, mark as really deprecated.
Change-Id: I4a79bdbcf4c460d21e73b635d2bd3725c22876b2
|
|
Change-Id: I55d3f4546f40a321ebf4b08db33536592f451944
Reviewed-on: https://gerrit.libreoffice.org/4318
Reviewed-by: Marcos Souza <marcos.souza.org@gmail.com>
Reviewed-by: Noel Power <noel.power@suse.com>
Tested-by: Noel Power <noel.power@suse.com>
|
|
Change-Id: Iafad6249a7998d7c749c1ca2979a606078cfcb5e
Reviewed-on: https://gerrit.libreoffice.org/4070
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
|
|
...used for now to transport @deprecated information.
Also, improve Idx-String (formerly Idx-Name, but also used for UTF-8 annotations
now) format, using the 0x80000000 for the indirection rather than the base case.
(And the README erroneously used "Offset of" Idx-String all over the place.)
Change-Id: I7003b1558ab536a11a9af308f9b16a7ef8840792
|
|
|
|
Change-Id: I0a7f230cb7e36857079de20a535cd883e30fd46f
|
|
Change-Id: I503d88b7d6fc44ef70d5071fddcec465e3fba856
|
|
...getting rid of now dangling references to module registry.
Change-Id: Iccad7ff5dc0e79bf91b7b7dae03b73f16adeb121
|
|
Change-Id: I112e6ac263bb673b5ad553742d3fa77af50bdf03
|
|
Make uno-skeletonmaker work on top of unoidl/ instead of registry/.
These changes have only been tested so far rather lightly. Basic
uno-skeletonmaker still works, but more thorough testing of the various input
flags is needed.
Change-Id: Id7f3aee863a10f8c649325db2d6f34a4057f70ff
|
|
Change-Id: Ib46d7b8934f63d88ea953707fa1fbfb51c524efd
|
|
Change-Id: Ie1c1311d1df14d5639b7642d2b9a1588605c31fc
|
|
Make javamaker work on top of unoidl/ instead of registry/.
API CHANGE: javamaker no longer supports the -B switch, as that is meaningless
with the new format. When reading from an old-format .rdb file, /UCR is hard-
coded as the prefix now.
Change-Id: I8cca39f8ebacd0476934f7bd493d206928d063a9
|
|
Change-Id: I4fa4431978f049a7b5b201d89743f909bc120ff4
|
|
Change-Id: I64ac7b45722e4147091068e71e9ceedea3d73010
|
|
Make cppumaker work on top of unoidl/ instead of registry/, as a first step to
change all the various codemakers.
* API CHANGE: cppumaker no longer supports the -B switch, as that is meaningless
with the new format. When reading from an old-format .rdb file, /UCR is
hard-coded as the prefix now.
* TODO: The new format does not yet support deprecation annotations, so the
generated .hdl/.hpp files lack any SAL_DEPRECATED_INTERNALs for now.
* codemaker/typemanager.hxx is extended with access to unoidl/ functionality, so
the various codemakers can use registry/ and unoidl/ in parallel for now.
The access to registry/ functionality will be removed. (Added small throwaway
helper functions u2b/b2u to easily map between OString and OUString at the
remaining seams for now.)
* Includes a selective revert of ba044b1e9613ed30906a9a540b7da8392923e4e3
"remove needless forward rtl::OUString declarations" in those parts of
codemaker, unodevtools, unoidl that were covered by this local
work-in-progress patch; I would otherwise have hard a hard time re-applying
it.
* The generated .hdl/.hpp files are mostly unchanged, except for a few minor
things:
** Any SAL_DEPRECATED_INTERNALs are missing (see above).
** In comprehensive getCppuType definitions, some members were erroneously
classified as TypeCalss_UNKNOWN.
** In comprehensive getCppuType definitions, some unnecessary calls like
::cppu::UnoType< ::sal_Int32 >::get();
can be removed.
** For typedef sequence<X>, the .hdl file need not include X.hdl, but only needs
to forward-declare it.
** Unnecessary includes for optional bases of interfaces can be removed.
** Some numbering of local variable names (sMethodName1, ...) has changed.
Change-Id: Icad98f248ac15177337f1b4ab709a755a8af6238
|
|
Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk
have kept them, in order not to break external API (the automatic using declaration
is LO-internal).
Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09
|
|
Change-Id: I650efd6780070410eaf34993dd41ed1b8ada7c9a
|
|
Change-Id: I15f6ad0a760a28cbac53f99ba4d14ff5c24ce005
|
|
...so include the latter in isBootstrapType too, see
dee53a32a9feba2021782db5762b5a9a034efae4 "Temporary hack around
cppu_detail_getCppuType variants violating ODR."
Change-Id: I613cf3d8699eccb149e0e1d31f4398a426ce0966
|
|
Also, change ".equals" fro "==" and drop a useless function.
Change-Id: I5ce4fd2cc7c62a18e059e945b42cc01425802aa0
Reviewed-on: https://gerrit.libreoffice.org/2605
Reviewed-by: Olivier Hallot <olivier.hallot@alta.org.br>
Tested-by: Olivier Hallot <olivier.hallot@alta.org.br>
|
|
Change-Id: I01f503ea5268245cc4f98524931730cfa063d57e
|
|
More macros removed, and some simplifications when callind methods.
Conflicts:
codemaker/source/javamaker/javatype.cxx
Change-Id: If55046a5a9ceb6c8c84f3fa190f26cc9e1dde352
|
|
For more easy review, this is the first part of these changes.
More will come :)
Change-Id: Ic6ab0c7baebf0414dbcccb5dcfad434b3b07964c
Reviewed-on: https://gerrit.libreoffice.org/2595
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
|
|
And another cleanups like removing RTL_CONST* macros and other simple
things.
Much more can be done inside codemaker.
Change-Id: I338e1c0e88558124741c6202896355533535a129
Reviewed-on: https://gerrit.libreoffice.org/2583
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
|
|
Change-Id: I2c9cdff2aeb97c8b9740aba91990e27315d5c85b
|
|
Change-Id: I46a748bf2c54d15c0f5718901197f3b4c34b82bf
|
|
...that had once been workarounds for compilers that did not yet support the
C++98 scoping rules for declarations in for-init-statements.
Change-Id: I51dc42982b30bf3adea6de1a10a91c0b4b4acfbe
|
|
Change-Id: I0fcd70cff092c7d90b57b9af9dcec99f23750f1c
Signed-off-by: Luboš Luňák <l.lunak@suse.cz>
|
|
...as had been done in 0295bd6b3f21dd648af6145ca23d90467f3cec73 "Remove
exception spec from idl-generated c++ headers."
Change-Id: I1b900a91be6db6cb4d7b60759e844117aa6b027d
|
|
Exception specifications are useless for production code, but make
for useful assertions in dbgutil builds (on platforms where they
are enforced at runtime).
Because we do not have API tests that exhaustively trigger all
documented error conditions, much less the undocumented or wrongly
handled error conditions that would cause the implementation to violate
its API specification, there is likely some benefit in having these
runtime-checked specifications in debug builds, in the hope that our
various tests which may incidentally call various API methods, or
general soffice usage, uncovers these bugs.
Also, there may be some benefit to making API implementers more
aware of the exception specifications, to quote Stephan's mail:
To be able to programmatically react to an exception raised by a UNO
method (which is the raison d'être of non-runtime UNO exceptions), the
specification of that method must document the method's behavior with
respect to raising that exception, and any implementation of the method
must adhere to that specification. However, with that part of a UNO
method's interface moved out of sight of a programmer writing a C++
implementation of that method, I fear that adherence to specification
will degrade in practice. And that negatively affects an area where we
do not shine anyway: reaction to errors.
This partially reverts commits:
0295bd6b3f21dd648af6145ca23d90467f3cec73
155cd09b5eebe0c1eab0610a7f1f04f09de4b217
Change-Id: I9c7664c9f1b238f4f9501aacb065981236949440
|