You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The only difference between UnsizedType and SignatureMismatch versions of check_compatible_arguments_mod_conv should be that one returns a boolean (yes/no answer) and the other constructs a type mismatch info object (for printing a detailed error). The depth parameter is not visible outside the module. It is only used to control the behavior when check_compatible_arguments recurses into function types.
It is indeed quite awkward to have two separate functions that do the same thing.
At the moment. UnsizedType.check_compatible_arguments_mod_conv is only used in Stan_math_signatures to check that operators like +, -, *, etc are well-typed. We can very easily adapt this to use the SignatureMismatch version, though it requires some untangling to prevent a circular dependency among the files.
The text was updated successfully, but these errors were encountered:
Currently, SignatureMismatch depends on Stan_math_signatures. If we try to use SignatureMismatch inside Stan_math_signatures, we get a loop which is impossible to compile. It just requires rethinking or moving some things around
This should definitely happen after #999, and maybe even after #995
Originally discussed as part of #998:
@nhuurre writes:
At the moment.
UnsizedType.check_compatible_arguments_mod_conv
is only used in Stan_math_signatures to check that operators like +, -, *, etc are well-typed. We can very easily adapt this to use the SignatureMismatch version, though it requires some untangling to prevent a circular dependency among the files.The text was updated successfully, but these errors were encountered: