-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
internal/core/adt: improve disjunction of scalars
This CL fixes several related issues at once. They needed to be fixed all at once as the individual changes would introduce new errors. The problem with Issue #3415 was that an expression task was dropped if it triggered the evaluation of a disjunction. Expression tasks are now copied upon such a split. Another issue was that unify could do a more thorough evaluation even when only a scalar was needed that was already known. This was fixed by bailing out of unify sooner. Conversely, when evaluating arguments for builtins with concrete arguments, the requested evaluation was often not strict enough. This new behavior mimics the V2 evaluator much more closely. This is why some of the error message changes, even when correct in V3, now mimic more closely the V2 error messages. Notes on test changes: - Several p1 and p0 todos are fixed. -chains.txtar: still broken, changes are immaterial to this Fixes #3415 Signed-off-by: Marcel van Lohuizen <mpvl@gmail.com> Change-Id: I8ecd339f4672463588cafe7cf66cfa539c9210b0 Dispatch-Trailer: {"type":"trybot","CL":1206123,"patchset":1,"ref":"refs/changes/23/1206123/1","targetBranch":"master"}
- Loading branch information
Showing
25 changed files
with
525 additions
and
1,030 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.