On 10/31/2013 09:46 AM, Noel Grandin wrote:
There are some odd macros here:

    http://opengrok.libreoffice.org/xref/core/sal/rtl/string.cxx#58

which look like:

      #define IMPL_RTL_STRINGNAME( n )    rtl_string_ ## n

and then they are used in the code like this:

     IMPL_RTL_STRINGNAME( release )( *pTarget );

and in methods definitions like this:

     static IMPL_RTL_STRINGDATA* IMPL_RTL_STRINGNAME( ImplAlloc )(
sal_Int32 nLen )


I'm not seeing the points of these macros?
They make the methods in questions invisible to OpenGrok and grep and
they don't seem to add any value.

Those IMPL_RTL_* macros are for use in the #include "strtmpl.cxx" a few lines further down. Sort of poor man's templates, to do code sharing among string.cxx and ustring.cxx.

Uses of the macros directly in string.cxx could be resolved, of course.

Stephan
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to