Steps to replicate the issue (include links if applicable):
- Please see the following example function calls to Z802/if.
- Z881/Typed list
- Z882/Typed pair
- Z883/Typed map
- Z24/void
What happens?:
Z42/False is returned from the Z802K3/else branch (as specified in the calls).
What should have happened instead?:
Z506/Argument type mismatch error, because in each case the condition does not evaluate to a Boolean result.
Software version (on Special:Version page; skip for WMF-hosted wikis like Wikipedia):
Other information (browser name/version, screenshots, etc.):
Non-generic Types generally seem to work as expected, as do Typed list, Typed pair and Typed map as a Type.
Although instances of a custom type or Wikidata enumeration type correctly fail with a Z506 error, the actual type is not reported, unlike the types themselves, which are correctly identified as "Z4". Booleans don’t fail, of course, but Strings do, and here the argument itself is reported with no Type. With Z11/Monolingual text, the Type is reported but not the value. It’s not obvious to me why the Type and value should not be reported in all cases, subject to any limits on the message size.