type equality cannot be proved with summon[t1.X =:= t2.X]
using singleton equality of t1 and t2
#22327
Labels
summon[t1.X =:= t2.X]
using singleton equality of t1 and t2
#22327
Uh oh!
There was an error while loading. Please reload this page.
Compiler version
3.6.2
Minimized code
Output
Expectation
since t1 and t2 are both function arguments, their most narrow types should both be path singletons, if these 2 are equal, it should imply that all their dependent types with the same symbols should also be equal.
(In addition this error message is also not sufficiently informative.)
Is
=:=
considered core part of the language? If not, a third-party implementation based on compile-time staging may be able to incorporate this rule while emitting more newbie-friendly error message.The text was updated successfully, but these errors were encountered: