aboutsummaryrefslogtreecommitdiffstats
path: root/prog/minimization.go
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2024-03-06 16:09:41 +0100
committerAleksandr Nogikh <nogikh@google.com>2024-03-08 10:56:47 +0000
commit8e75c913b6f9b09cab2ad31fd7d66ea0d1703de8 (patch)
tree08556bc4e03b3550324770d80f9a02b057b12ad4 /prog/minimization.go
parent4097c8d7a8596ddbc9a9db7b7f39c5cbdb1bd742 (diff)
prog: auto-set proper conditional fields in Deserialize()
Treat all default union arguments as transient and reevaluate them after the call was fully parsed. Before conditional field patching, we do need to have performed arg validation, which also reevaluates conditions. To break the cycle, make validation configurable.
Diffstat (limited to 'prog/minimization.go')
-rw-r--r--prog/minimization.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/prog/minimization.go b/prog/minimization.go
index a9864aca2..1760d180f 100644
--- a/prog/minimization.go
+++ b/prog/minimization.go
@@ -281,7 +281,7 @@ func minimizeInt(ctx *minimizeArgsCtx, arg Arg, path string) bool {
// By mutating an integer, we risk violating conditional fields.
// If the fields are patched, the minimization process must be restarted.
- patched := ctx.call.setDefaultConditions(ctx.p.Target)
+ patched := ctx.call.setDefaultConditions(ctx.p.Target, false)
if ctx.pred(ctx.p, ctx.callIndex0) {
*ctx.p0 = ctx.p
ctx.triedPaths[path] = true