May 14, 2026
4:45 p.m.
Native VarXor already converts a BSTR operand to VT_I4 when it parses as a number, falling back to VT_BOOL otherwise; VarAnd, VarOr and VarImp do not. That left expressions like ""1"" And ""2"" producing Boolean[True] in Wine instead of native's Long[0]. Apply the same coercion in interp_and / interp_or / interp_imp before calling oleaut32 so the bitwise result type matches. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10901