[PUSHED] Create OUString and OString number(*) methods.

Stephan Bergmann sbergman at redhat.com
Mon Jan 21 08:36:18 PST 2013


On 01/18/2013 05:20 PM, Luboš Luňák (via Code Review) wrote:
> Thank you for your patch!  It has been merged to LibreOffice.
>
> If you are interested in details, please visit
>
>      https://gerrit.libreoffice.org/1625

I must admit that I didn't review the later revisions of that patch 
while in progress at gerrit, but now the lines

> assert( ll <= SAL_MAX_INT64 ); // valueOfInt64 may not be able to handle the highest bit

in the various number() function definitions make me wonder.  That 
implies that clients of those functions need to ensure to call them with 
small-enough arguments.  Is that what we want?

While the gotcha of printing a large unsigned value as a negative value 
thanks to calling rtl_ustr_valueOfInt64 internally can be a problem in 
some call sites, others might be fine with producing just some sort of 
informative value and won't mind generating negative output.  If we 
would want to force the latter into using explicit casts to sal_Int64 
(in case they don't do already anyway), wouldn't it be better to make 
the relevant large unsigned overloads "= delete"?

Stephan


More information about the LibreOffice mailing list