When using assert on an optional recursive type, the language server returns a warning.
For example:
---@alias Value string | Value[]
---@return Value?
function get_value() end
assert(get_value())
Gives me this diagnostic:
expected `(string|Value[])?` but found `(string|Value[])?`. type recursion [param-type-mismatch]