`T1?|T2?` is now parsed as `T1?`, whose correct form should be `(T1|T2)?` or `T1|T2|nil` or `field? T1|T2`. But many libraries (e.g. neovim plugins) are using this incorrect form. This misuse is so prevalent that should we consider making this form legal?
T1?|T2?is now parsed asT1?, whose correct form should be(T1|T2)?orT1|T2|nilorfield? T1|T2.But many libraries (e.g. neovim plugins) are using this incorrect form.
This misuse is so prevalent that should we consider making this form legal?