Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
b11d3ae
WIP: Wave 1 Exit
briansrls Jul 11, 2026
a4524c9
WIP: Wave 1 Exit
briansrls Jul 11, 2026
f7e7807
WIP: Wave 1 Exit
briansrls Jul 11, 2026
c430dca
WIP: Wave 1 Exit
briansrls Jul 11, 2026
304b69a
WIP: Wave 1 Exit
briansrls Jul 11, 2026
0fd32cf
WIP: Wave 1 Exit
briansrls Jul 11, 2026
677f96c
WIP: Wave 1 Exit
briansrls Jul 11, 2026
68db711
WIP: Wave 1 Exit
briansrls Jul 11, 2026
1d97700
WIP: Wave 1 Exit
briansrls Jul 11, 2026
b09c8ca
Slice 1.5 WIP: match lowering scrutinee path green via postfix pass-t…
briansrls Jul 11, 2026
9dee2a8
WIP: Wave 1 Exit
briansrls Jul 11, 2026
67bc1fe
Merge remote-tracking branch 'origin/main' into session/eager-heron-120
briansrls Jul 11, 2026
011f68a
WIP: Wave 1 Exit
briansrls Jul 12, 2026
a982216
WIP: Wave 1 Exit
briansrls Jul 12, 2026
fda05f7
WIP: Wave 1 Exit
briansrls Jul 12, 2026
51dfed2
WIP: Wave 1 Exit
briansrls Jul 12, 2026
aa8d3e4
WIP: Wave 1 Exit
briansrls Jul 12, 2026
5212602
WIP: Wave 1 Exit
briansrls Jul 12, 2026
fbce3c2
WIP: Wave 1 Exit
briansrls Jul 12, 2026
e4f695f
WIP: Wave 1 Exit
briansrls Jul 12, 2026
2d106d8
WIP: Wave 1 Exit
briansrls Jul 12, 2026
afba53a
WIP: Wave 1 Exit
briansrls Jul 12, 2026
16d6d81
WIP: Wave 1 Exit
briansrls Jul 12, 2026
6206919
WIP: Wave 1 Exit
briansrls Jul 12, 2026
047c85e
WIP: Wave 1 Exit
briansrls Jul 12, 2026
05e2941
WIP: Wave 1 Exit
briansrls Jul 12, 2026
37bd019
WIP: Wave 1 Exit
briansrls Jul 12, 2026
2bfc3cc
Merge remote-tracking branch 'origin/main' into session/eager-heron-120
briansrls Jul 12, 2026
da3ba12
WIP: Wave 1 Exit
briansrls Jul 12, 2026
566039d
WIP: Wave 1 Exit
briansrls Jul 12, 2026
524ba2a
WIP: Wave 1 Exit
briansrls Jul 12, 2026
6b5cd37
WIP: Wave 1 Exit
briansrls Jul 12, 2026
ee5bc00
WIP: Wave 1 Exit
briansrls Jul 12, 2026
fa4509d
WIP: Wave 1 Exit
briansrls Jul 12, 2026
69c004c
WIP: Wave 1 Exit
briansrls Jul 12, 2026
26e20e3
WIP: Wave 1 Exit
briansrls Jul 12, 2026
a8c74be
WIP: Wave 1 Exit
briansrls Jul 12, 2026
27b379a
WIP: Wave 1 Exit
briansrls Jul 12, 2026
e5c3835
WIP: Wave 1 Exit
briansrls Jul 12, 2026
8b3edbd
WIP: Wave 1 Exit
briansrls Jul 12, 2026
3f05ce5
WIP: Wave 1 Exit
briansrls Jul 12, 2026
0e46206
WIP: Wave 1 Exit
briansrls Jul 12, 2026
ca3b2e5
WIP: Wave 1 Exit
briansrls Jul 12, 2026
9cd4075
Wave 1 slice 1.5: add durable match-lowering witness roster.
briansrls Jul 12, 2026
f4a28d1
WIP: Wave 1 Exit
briansrls Jul 12, 2026
71b2224
WIP: Wave 1 Exit
briansrls Jul 12, 2026
428f438
WIP 1.6: ingested classical_not exit witness scaffold + pipeline probes.
briansrls Jul 12, 2026
fff5339
WIP: Wave 1 Exit
briansrls Jul 12, 2026
7cfe16b
Fix param-scrutinee domain type lookup Optional typing in infer.
briansrls Jul 12, 2026
5ab7b8e
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
c052b6f
Add durable infer RED controls for unresolved param-scrutinee domains.
briansrls Jul 12, 2026
245cab3
Merge origin/session/eager-heron-120: shared classical_not witness + …
Jul 12, 2026
88f25ef
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
1f554a3
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
41ef258
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
91dbab4
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
431a3d9
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
bf691ce
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
a2975e7
Fix ingested param scrutinee emit by resolving bare ident atoms in ar…
Jul 12, 2026
6966fb5
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
429b578
Address PR review: ground Int match arm types at construction; drop p…
Jul 12, 2026
a12ed95
Remove duplicate TargetModel import in emit_produced.dag.
Jul 12, 2026
a9b5b67
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
f20c924
WIP: classical_not emit-host target + FLAG E scaffold row; diagnose e…
Jul 12, 2026
e21f7ae
WIP: Generalized ingested match-fn emission (Rust target): make an in…
Jul 12, 2026
b491901
Fail-closed infer: refuse Int scrutinee on bool-literal match path.
Jul 12, 2026
83928db
Land PATH 1 1.6 exit on #6510: int-bool octet emit bridge + classical…
briansrls Jul 12, 2026
6dde695
WIP: Wave 1 Exit
briansrls Jul 12, 2026
e1a39e5
Remove stray body_lowering_match.dag from PR scope.
briansrls Jul 12, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 20 additions & 1 deletion src/v2/compiler/03_normalize.dag
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,10 @@ import v2.std.compilers.sugar {
apply_sugar,
sugar_rule_for_key
}
import v2.compiler.body_lowering_fold { body_lower_finish }
import v2.compiler.body_lowering_fold {
body_lower_finish,
body_lower_is_deferred_lower_emitted
}
import v2.compiler.normalized_tree { NormalizedTree }
import v2.extdeps.languages.dag {
parse_production_emitted_identity_optional
Expand Down Expand Up @@ -114,6 +117,22 @@ fn normalize_sugar_finish(n: Node, folded: Node, cd: Diagnostics) -> Outcome<Nod
}

fn normalize_node(n: Node) -> Outcome<Node> {
match parse_production_emitted_identity_optional(node: n) {
Present { value: emitted } =>
if body_lower_is_deferred_lower_emitted(emitted: emitted) {
match body_lower_finish(n: n, folded: n, cd: None) {
Rejected { diagnostics: r } => Rejected { diagnostics: r }
Accepted { value: after_body, diagnostics: cd0 } =>
normalize_sugar_finish(n: n, folded: after_body, cd: cd0)
}
} else {
normalize_node_fold_children(n: n)
}
Absent => normalize_node_fold_children(n: n)
}
}

fn normalize_node_fold_children(n: Node) -> Outcome<Node> {
match fold(n.children, init: normalize_fold_init(n: n), f: fn(acc, e) {
normalize_fold_step(acc: acc, edge: e, child: normalize_node(n: e.target))
}) {
Expand Down
Loading
Loading