[Libreoffice-bugs] [Bug 124710] IFS function erroneously propagates error results from functions within IFS (smallest reproducer in comment 6)

bugzilla-daemon at bugs.documentfoundation.org bugzilla-daemon at bugs.documentfoundation.org
Wed Apr 17 10:09:08 UTC 2019


https://bugs.documentfoundation.org/show_bug.cgi?id=124710

--- Comment #8 from Winfried Donkers <winfrieddonkers at libreoffice.org> ---
(In reply to Eike Rathke from comment #6)
> Shortest reproducer:
> 
>   =IFS( 0, NA(), 1+0, "no idea")

I know what happens, but not yet why.
The raw stacktype for the arguments in ScInterpreter::ScIfs_MS() is
0         svDouble,
NA()      svError,
1+0       svError,
"no idea" svString.
This is not influenced by reversing the stack.
ScInterpreter::ScIfs_MS() gives #N/A as result, which is not parameter NA(),
but the result of PushNA(), because of svError (1+0) is not popped and
evaluated. 

I saw that the parameter parser (I don't know its proper term) parses 1+0 into
1, but have not yet found out if/when the raw stacktype for parameter (1+0)
changes into svError.

I keep on digging, but it may cost some time.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20190417/1b37f91d/attachment-0001.html>


More information about the Libreoffice-bugs mailing list