aboutsummaryrefslogtreecommitdiff
path: root/bootstrap/env.c
diff options
context:
space:
mode:
Diffstat (limited to 'bootstrap/env.c')
-rw-r--r--bootstrap/env.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/bootstrap/env.c b/bootstrap/env.c
index 773550a..ff2929f 100644
--- a/bootstrap/env.c
+++ b/bootstrap/env.c
@@ -35,6 +35,8 @@ envput(struct env *env, const struct decl *decl) {
// modify existing forward declarations?
if (decl == d0 || !memcmp(d0, decl, sizeof *d0))
return d0;
+ if (d0->t == Ddef && decl->t == Ddef && !memcmp(&d0->var, &decl->var, sizeof d0->var))
+ return d0;
if (d0->t == Dmacro && !memcmp(&decl->macro, &d0->macro, sizeof decl->macro))
return d0;
if (d0->t == Dtepl && !memcmp(&decl->tepl, &d0->tepl, sizeof decl->tepl))