HaxeFoundation / HaxeFoundation/haxe

EqStricter

Open
#12,714 0 comments 0 reactions 1 assignee Claimed by @kLabz View on GitHub
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.