[Libreoffice] [PUSHED] Re: [Patch] RTL_CONSTASCII_USTRINGPARAM for some files part 3

Caolán McNamara caolanm at redhat.com
Wed Dec 22 13:36:56 PST 2010


On Wed, 2010-12-22 at 22:22 +0100, Julien Nabet wrote:
> Hello,
> 
> Here is a patch for some files.

Looks good, committed locally and I'll push globally when my build
completes just to double check this.

> 
> there's still this :
> writer/sw/inc/unomid.h:#define C2U(cChar) 
> rtl::OUString::createFromAscii( cChar )
> 
> There a lot of files that use this macro.
> Could you give details about this part of your last message ? (how do 
> you do this)
> 
> after passing a build with the SAL_N_ELEMENTS as compile-time test

If you've got >= gcc 4.5.1 then automatically some C++0x are used to
force a compile error if you do RTL_CONSTASCII_USTRINGPARAM(pPointer)
where pPointer is e.g. char *pPointer="foo"; grep for SAL_N_ELEMENTS in
rtl/inc to see the test.

You could force this on in solenv/inc/unxgcc.mk (see HAVE_CXX0X) for
older gcc versions, all that goes wrong is that there are some false
positives here and there for some special edge cases that don't affect
RTL_CONSTASCII_USTRINGPARAM itself. So you could build everything
normally, hack the unxgcc.mk, tweak the defines in sw to assume its
const and just build and fix the ones that break.

C.



More information about the LibreOffice mailing list