-
Notifications
You must be signed in to change notification settings - Fork 298
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: dereference disjunct result
With nested disjunctions, disjuncts may end up forwarded in Vertex.BaseValue in intermediate results. This causes closeContext.arcs and Arcs to be misaligned if these results are used in further processing. This is the case, for instance in the following example: {#v: 1} | 2 {#v: 1} | (2 | 3) {#v: 1} | 2 {#v: 1} | 2 This issue led to duplicate disjuncts and many other problems. The EvalAlpha test runs over 10% faster as a result of this change! The test in conjuncts.txtar removes a spurious element and is now correct. The tests for 3528 were already fixed by an earlier CL. We will leave the closing here, though, to signal these changes are related. Fixes #3528 Signed-off-by: Marcel van Lohuizen <[email protected]> Change-Id: Ieaeba4b758006592b115240dac2e29b967103c5a Reviewed-on: https://review.gerrithub.io/c/cue-lang/cue/+/1206178 Unity-Result: CUE porcuepine <[email protected]> Reviewed-by: Matthew Sackman <[email protected]> TryBot-Result: CUEcueckoo <[email protected]>
- Loading branch information
Showing
3 changed files
with
17 additions
and
15 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