HaxeFoundation / HaxeFoundation/haxe
EqStricter
- Dominant language
- Haxe
- Stars
- 6.9k
- Forks
- 715
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 11
Description
This was introduced in #11489 to make the anon identification usable for HXB. There was a [followup commit](https://github.com/HaxeFoundation/haxe/commit/8c7cce6be853bd80edf9ae1b336d97c7d9b1bea9) which extended its usage, and added `= EqStricter` checks to both `type_eq` and `unify`. This seems wrong to me because it just unconditionally rejects any occurrence of an unbound monomorph, which isn't really related to strictness. It doesn't even check if the assignment is between two physical identical monos (`a == b` doesn't cover this because there could still be two different `TMono` constructors carrying the same `tmono` instance).
@kLabz Could you check why it was changed like this? If we want a general "fail unification if there's an unbound mono" that should either be a flag on the unification context or be handled separately.
Contributor guide
Assessment
This issue has not been assessed yet.