Change in core[master]: fdo#56124 add calc functions IFERROR and IFNA as in ODFF1.2

Eike Rathke erack at redhat.com
Fri Dec 14 09:40:34 PST 2012


Hi Winfried,

On Sunday, 2012-12-09 15:07:46 +0100, Winfried Donkers wrote:

> >Could it be that you didn't implement the special handling in the
> compiler and tokens? ...
> 
> I did an opengrok search for ocIf and changed all files, including sxfunc.src (to give iferror 3 parameters).
> The only differences that I know of between IF() and IFERROR() are the function names and the group to which the functions belong.
> 
> When in the switch statement in ScIfError()/ScIfJump() (in /core/sc/source/core/tool/interpr1.cxx)
>         default:
>         {
>             if ( GetBool() )   <<-- here
>             {   // TRUE
>                 if( nJumpCount >= 2 )
> 
> I replace GetBool() with getDouble() and look at its value, it is 3 in case of IFERROR() and 0 in case of IF().
> (in calc I entered IFERROR(0;2;3), result 2 and IF(0;2;3), result 3).

I did not quite get what you are actually doing there..  if the
functions are otherwise treated identically then IFERROR should return
3 as well. Could you please upload the patch to gerrit, mark it as work
in progress by preceding the commit summary with WIP:

Thanks
  Eike

-- 
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD
Support the FSFE, care about Free Software! https://fsfe.org/support/?erack
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20121214/96702c20/attachment.pgp>


More information about the LibreOffice mailing list