Fixes IncrClosureInference.changeFunctionalInterfaceParam test. Temporary rules built as macro applications weren't computing hash due to origin!=null condition. Also macro inputs weren't processed. Stable hash for TypeVarSubstitution is defined because it's used in macro args. In general, any classes used as constraint/predicate/macro args must adhere to stable hashCode() contract: hash should change if there're important changes that may influence typechecking result. Otherwise there may be unnecessary incremental recomputations. Relevant for MPSCR-62 |
||
|---|---|---|
| .. | ||
| fitch | ||
| lambdacalc | ||
| mpscore | ||