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

--- Comment #2 from Patrick Traill <patrick.tra...@t-online.de> ---
On a similar note, when a named parameter is passed, IsMissing for a preceding
Optional parameter returns False although it is not supplied.
It is possible to make IsMissing return True by “explicitly omitting” the
parameter, i.e. writing “,” in the appropriate place.

I suspect this is all a result of the same mechanism, so that this may be
regarded as another aspect of the same bug.
Again, correcting this behaviour could break existing code.

This is demonstrated by the following test, in which the 3rd and 4th calls
display the wrong behaviour.

Sub Bug_Optional_Not_IsMissing_2 ()
        Bug_Optional_Not_IsMissing_2_Sub        ()
        Bug_Optional_Not_IsMissing_2_Sub        (,)
        Bug_Optional_Not_IsMissing_2_Sub        (B := True)
        Bug_Optional_Not_IsMissing_2_Sub        (B := False)
        Bug_Optional_Not_IsMissing_2_Sub        (, B := True)
        Bug_Optional_Not_IsMissing_2_Sub        (, B := False)
End Sub

' Demonstrate a bug in assigning values to optional parameters, as above
Sub Bug_Optional_Not_IsMissing_2_Sub _
( Optional A as Boolean _
, Optional B as Boolean = False _
)
        MsgBox ("IsMissing (A) = " + IsMissing (A) + ",  B = " + B)
End Sub

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to