<html>
    <head>
      <base href="https://bugs.documentfoundation.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - IFS function erroneously propagates error results from functions within IFS (smallest reproducer in comment 6)"
   href="https://bugs.documentfoundation.org/show_bug.cgi?id=124710#c8">Comment # 8</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - IFS function erroneously propagates error results from functions within IFS (smallest reproducer in comment 6)"
   href="https://bugs.documentfoundation.org/show_bug.cgi?id=124710">bug 124710</a>
              from <span class="vcard"><a class="email" href="mailto:winfrieddonkers@libreoffice.org" title="Winfried Donkers <winfrieddonkers@libreoffice.org>"> <span class="fn">Winfried Donkers</span></a>
</span></b>
        <pre>(In reply to Eike Rathke from <a href="show_bug.cgi?id=124710#c6">comment #6</a>)
<span class="quote">> Shortest reproducer:

>   =IFS( 0, NA(), 1+0, "no idea")</span >

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.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>