Commit 33be5c8
committed
Restore a fix to handle_inst_var_subs_2.
A previous change improved the precision of inst matching by making
handle_inst_var_subs_2 recurse on the abstract unification of InstA and
SubInstB,
Recurse(InstA, abstractly_unify_inst(InstA, SubInstB))
The change was temporarily reverted because it is susceptible to
infinite recursion when abstractly_unify_inst returns an inst containing
larger and larger "unify_insts" in each successive call.
compiler/inst_match.m:
Restore the fix but avoid infinite recursion.
tests/EXPECT_FAIL_TESTS.all_grades:
Enable invalid/constrained_poly_insts2 again.1 parent a2879c6 commit 33be5c8
2 files changed
+12
-23
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
495 | 495 | | |
496 | 496 | | |
497 | 497 | | |
498 | | - | |
499 | | - | |
500 | | - | |
501 | | - | |
502 | | - | |
503 | | - | |
504 | | - | |
505 | | - | |
506 | | - | |
507 | | - | |
508 | | - | |
509 | | - | |
510 | | - | |
511 | | - | |
512 | | - | |
513 | | - | |
514 | | - | |
515 | | - | |
516 | 498 | | |
517 | 499 | | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
518 | 503 | | |
519 | 504 | | |
520 | | - | |
| 505 | + | |
521 | 506 | | |
522 | | - | |
| 507 | + | |
| 508 | + | |
523 | 509 | | |
524 | 510 | | |
525 | | - | |
526 | | - | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
527 | 517 | | |
528 | 518 | | |
529 | 519 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
0 commit comments