Commit Graph

139 Commits

Author SHA1 Message Date
8d54796bf1 enhance pass-by-ref plugin to detect large arguments
Detect arguments larger than 64 chars passed by value.

Change-Id: I9b0ea9ccb99d115984a26eab67c9cf6afd5f6cae
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2014-05-20 11:17:22 +02:00
20f14ed4a1 codemaker: sal_Bool->bool
Change-Id: I0a0691df58455b712eb27695f4cce15fd3494b65
2014-04-04 13:44:18 +02:00
362d4f0cd4 Explicitly mark overriding destructors as "virtual"
It appears that the C++ standard allows overriding destructors to be marked
"override," but at least some MSVC versions complain about it, so at least make
sure such destructors are explicitly marked "virtual."

Change-Id: I0e1cafa7584fd16ebdce61f569eae2373a71b0a1
2014-04-01 19:22:54 +02:00
70cc2b191b First batch of adding SAL_OVERRRIDE to overriding function declarations
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.

Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
2014-03-26 16:39:26 +01:00
c58fe8c85f codemaker,editeng: prefer passing OUString by reference
Change-Id: If3e2dd3905cc33f1e7fc9fbfbb9f2bb49a756a34
2014-03-17 09:00:07 +02:00
07d3807e99 codemaker: sal_Bool -> bool
Change-Id: I2cacac2aa7e48b3b9d8d060137d5c6d6f1d06b3f
2014-02-17 17:55:17 +01:00
2c8193137a coverity#707676 : Uninitialized scalar field
Change-Id: I546c3f497dc98c88a0d678622c20cced387a4ab2
2014-02-01 00:10:27 -06:00
d09c534c98 coverity#440029 Logically dead code
Change-Id: Id071c8658b473b9d393a32e1da2c2474bb7361d3
2014-01-28 11:29:15 +00:00
8bb41c67f0 coverity#1019407 Uninitialized scalar field
Change-Id: Icaa2062b00e0a68486bcbbc4a26b4089016bf2c8
2014-01-27 15:23:17 +00:00
9f030d43ef coverity#1019406 Uninitialized scalar field
Change-Id: I9f5d48c5c5c0f76aa3386cfedcaf43ced162e4b0
2014-01-27 15:23:17 +00:00
8471b35688 Be explicit when using bool as integral value
Change-Id: I22ee35d8c26ac119b35ba6c85c06199539b0c9d7
2014-01-10 17:11:43 +01:00
a80fb45fe4 Revert "WIP: add cppumaker -U to directly read from .idl files"
This reverts commit c4113906d7f15f8aa0eb385a4caf474b3505ede1, which is not
necessary after all with recent "Hook SourceProvider into unoidl::loadProvider."
2013-09-16 13:29:49 +02:00
c4113906d7 WIP: add cppumaker -U to directly read from .idl files
Change-Id: I420847515b6b691ae81a249a8820cf9a3d132372
2013-09-12 17:45:12 +02:00
4b0a692668 Stray space at end of usage text line
Change-Id: I886c543d9de63595a9183f4e5f108f08b2ba25ef
2013-09-10 15:48:03 +02:00
a1dff2901e Support for annotations in the new UNOIDL format
...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
2013-05-16 16:12:45 +02:00
bab43b23d5 Allow for (relative) pathname args for codemakers again
Change-Id: I503d88b7d6fc44ef70d5071fddcec465e3fba856
2013-04-24 12:42:01 +02:00
048e591819 Further codemaker, unodevtools clean-up
...getting rid of now dangling references to module registry.

Change-Id: Iccad7ff5dc0e79bf91b7b7dae03b73f16adeb121
2013-04-16 17:38:44 +02:00
0557453a35 Combine getSortResolve...() into one decompose()
Change-Id: Ie1c1311d1df14d5639b7642d2b9a1588605c31fc
2013-04-12 15:22:11 +02:00
fc02ae8f82 [API CHANGE] WIP: Experimental new binary type.rdb format
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
2013-04-11 09:29:44 +02:00
02a8e8acd1 [API CHANGE] WIP: Experimental new binary type.rdb format
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
2013-04-09 09:44:33 +02:00
1946794ae0 mass removal of rtl:: prefixes for O(U)String*
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
2013-04-07 14:23:11 +02:00
bb1f0c667f Clean up codemaker/typemanager.hxx
Change-Id: I650efd6780070410eaf34993dd41ed1b8ada7c9a
2013-03-27 09:36:54 +01:00
3991eaf556 reduce whitespaces between include and filename
Change-Id: I15f6ad0a760a28cbac53f99ba4d14ff5c24ce005
2013-03-19 01:26:45 +01:00
9edeb948a2 Removed last RTL_CONST* macros from codemaker
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>
2013-03-09 23:29:39 +00:00
a2454a42ad fdo#43460: use isEmpty()
Change-Id: I01f503ea5268245cc4f98524931730cfa063d57e
2013-03-09 20:32:39 +01:00
34aa49e81d Remove RTL_CONST* macros from codemaker - pt2
More macros removed, and some simplifications when callind methods.

Conflicts:
	codemaker/source/javamaker/javatype.cxx

Change-Id: If55046a5a9ceb6c8c84f3fa190f26cc9e1dde352
2013-03-08 17:44:03 +01:00
596334776a Remove RTL_CONST* macros from codemaker - pt1
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>
2013-03-08 13:02:22 +00:00
75e6856b08 fdo#57950: Remove chained appends in codemaker
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>
2013-03-08 04:31:03 +00:00
f1bca26afc Remove redundant braces around for loops
...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
2013-01-26 16:36:09 +01:00
5198c4a41f Replace chained O(U)StringBuffer::append() with operator+
Change-Id: I0fcd70cff092c7d90b57b9af9dcec99f23750f1c
Signed-off-by: Luboš Luňák <l.lunak@suse.cz>
2012-12-18 17:26:54 +01:00
625e173aaf OUString::replace() does not replace in-place
Change-Id: I5a1d713ee8e9c913adad57b7d8fb0597f96a2db4
2012-11-28 20:08:20 +02:00
1f9f8f4f40 loplugin: some log, indent and unused variable warnings
fix up some indents, remove some unused OUStrings and add some log areas

Change-Id: I5c50807aff7a726b03b72522975d9b75e6685b9b
2012-10-13 20:34:54 +01:00
586895f8fa loplugin: more unused OUString and misleading indentation
Change-Id: Ic21ca9e14520f4f16c2d665a07a79ee1a46ab91d
2012-10-11 21:16:27 +01:00
543158edba Require XComponentContext.getServiceManager to throw instead of returning null
This is such a fatal error that there is probably no point in trying to handle
it, so allow to simplify client code by removing the requirement to check for a
null return value.

Simplified some client code accordingly (modules configmgr and ure, and the code
generated by cppumaker and javamaker).

Change-Id: I51c0b270ec73409374f7439a47ee061407a46e31
2012-09-17 16:59:53 +02:00
c91e2cae54 re-base on ALv2 code. 2012-06-12 22:24:54 +01:00
26643fb59e codemaker: write version 49 (1.5) class files
The trick of writing generic types into class files of versions < 49
does no longer work with javac from OpenJDK 7:

/comphelper/qa/complex/comphelper/Map.java:154: error: type Pair does
not take parameters
  Pair< ?, ? >[] initialMappings = new Pair< ?, ? >[ _keys.length ];

There appears to be a related JDK bug for this, at some time javac had
an undocumented option to produce similar class files that are also
rejected now, this has been closed as "Not a Defect":

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7078419

Change-Id: I8a504f6cbb3bb58cd914aebb88637cc6feb0bd48
2012-05-21 18:48:04 +02:00
f3653d3c1e gbuild conversion: codemaker module 2012-04-14 06:58:00 -05:00
55823d331e replace APP?RPATH SDK by SDKBIN in old build system
Commit 0c80ad06fd96a4fec062a7edfff12bb65ef204b4 broke MacOS X builds
because of this discrepancy. It would be easy to accept both, but I
think it is better to be consistent with gbuild.
2012-04-14 07:22:15 +02:00
d6bc02f8c4 Replaced equalsAsciiL(RTL_CONSTASCII_STRINGPARAM(...)) with == operator 2012-04-06 20:03:42 +02:00
66a88dc17e UNO BYTE is signed
This is hopefully a better fix for c589fa17b8f3e6ded0d1e04120781eb5d6735bc7
"Dalvik enforces byte constants being in range (-128..127)."
2012-03-29 12:07:36 +02:00
c589fa17b8 Dalvik enforces byte constants being in range (-128..127) 2012-03-28 16:57:58 +03:00
b57a1f2f4d Reduce verbiage slightly 2012-02-16 15:25:38 +02:00
7c704c78d3 Removed some unused parameters; added SAL_UNUSED_PARAMETER.
SAL_UNUSED_PARAMETER (expanding to __attribute__ ((unused)) for GCC)
is used to annotate legitimately unused parameters, so that static
analysis tools can tell legitimately unused parameters from truly
unnecessary ones.  To that end, some patches for external modules
are also added, that are only applied when compiling with GCC and
add necessary __attribute__ ((unused)) in headers.
2012-01-21 15:21:16 +01:00
fd866ac8f1 Fix for fdo43460 Part VI getLength() to isEmpty()
Part VI
Module
codemaker
2011-12-13 00:40:14 +04:00
d8ed87481c remove include of pch header in codemaker 2011-11-27 12:59:38 -06:00
bf1f0183d5 Some fixes for "clang version 3.1 (trunk 142234)" (with --enable-werror, on Linux x86_64). 2011-10-18 23:10:56 +02:00
871426533f just silence the auto_ptr deprecations in isolation 2011-09-22 15:01:05 +01:00
e035836fb1 callcatcher: unused writeU1 2011-06-30 11:35:57 +01:00
9fa483cf7b No point building build-time executables for iOS 2011-06-13 02:43:35 +03:00
4be7cca60b Merge commit 'ooo/DEV300_m103'
Conflicts:
	codemaker/source/bonobowrappermaker/corbaoptions.cxx
	codemaker/source/cppumaker/cppuoptions.cxx
	codemaker/source/cunomaker/cunooptions.cxx
	codemaker/source/idlmaker/idloptions.cxx
	codemaker/source/javamaker/javaoptions.cxx
	cppu/source/typelib/typelib.cxx
	idlc/source/options.cxx
	offapi/com/sun/star/util/PathSubstitution.idl
	offapi/drafts/com/sun/star/form/ListEntryEvent.idl
	offapi/drafts/com/sun/star/form/XBindableValue.idl
	offapi/drafts/com/sun/star/form/XListEntryListener.idl
	offapi/drafts/com/sun/star/form/XListEntrySink.idl
	offapi/drafts/com/sun/star/form/XListEntrySource.idl
	offapi/drafts/com/sun/star/form/XValueBinding.idl
	registry/tools/checksingleton.cxx
	registry/tools/options.hxx
	registry/tools/regcompare.cxx
	registry/tools/regmerge.cxx
	sal/cppunittester/cppunittester.cxx
	sal/osl/unx/socket.c
	sal/osl/w32/diagnose.c
	sal/prj/d.lst
	sal/rtl/source/alloc_fini.cxx
	sal/rtl/source/alloc_global.c
	sal/rtl/source/makefile.mk
2011-03-23 16:59:59 +01:00