It seems bcc has the co- and contravariance for return types and parameter types backwards when checking whether a function type is assignable from another.
Expected Behavior
Local f:String(s:Object)
Local f_:Object(o:String) = f
should compile without complaints.
Local f:Object(o:String)
Local f_:String(s:Object) = f
Bug Report
It seems bcc has the co- and contravariance for return types and parameter types backwards when checking whether a function type is assignable from another.
Expected Behavior
should compile without complaints.
should be a type error.
Actual Behavior
It's the other way round