aboutsummaryrefslogtreecommitdiff
path: root/src/c.bqn
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2021-07-13 16:57:05 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2021-07-13 16:57:05 -0400
commit24dd446173ec6d004a1bdf2fb78cb7635ea8dbf7 (patch)
tree02a7c3b2bf2f894cac5779836b985f663c58b7b7 /src/c.bqn
parent3597bfc2cffe6cf81a3233200cf2ef0d191857a3 (diff)
Another scope resolution issue
Diffstat (limited to 'src/c.bqn')
-rw-r--r--src/c.bqn2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/c.bqn b/src/c.bqn
index de8b77b7..5d10238a 100644
--- a/src/c.bqn
+++ b/src/c.bqn
@@ -223,7 +223,7 @@ Parse ← {r‿vn‿i‿e‿def←𝕨⋄nv←≠vn
d↩(0≤dpf)⌾(dp⊸/)d⋄zda←0¨da←/def≤0 # Turn def ¯1 ← into ↩
dn←(dg←zda∾(df←d/idf)∾≠fsc)⊔da∾dv←d/idv # Identifier name ID, per-block
# Order every referenced identifier, and an undeclaration for each declaration
- ixf←((1=ic)+idf⊏¯1∾cb/gf)∾df⊏(≠𝕩)∾cc⊏gf # First order by block index, open for real and closed for virtual
+ ixf←((1=ic)+idf⊏¯1∾cb/gf)∾df⊏(≠𝕩)∾1-˜cc⊏gf# First order by block index, open for real and closed for virtual
ig←(⍋⊏⟜(ixx←idv∾dv))⊸⊏⍋ixf # Then order by name
{"Redefinition"_err_(𝕩⊏·∾⟜(d⊸/)ID) ¬ixx∨○(»⊸≠𝕩⊸⊏)ixf} (≠d)⊸≤⊸/ig
ig↩<⟜(≠d)⊸/(⍋ds←+`ig⊏d∾¯1¨dv)⊏ig # Last order by declaration depth