From 826bfca264d8ba071a64031460fbd0bc45e95d8d Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Thu, 3 Nov 1994 23:02:17 +0000 Subject: [PATCH] Block ends are now part of a block label's symbol information. --- cupl.h | 1 + interpret.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/cupl.h b/cupl.h index 9ab3e5b..02277e0 100644 --- a/cupl.h +++ b/cupl.h @@ -77,6 +77,7 @@ typedef struct lvar_t node *node; /* variable's symbol info */ value value; /* variable's value */ node *target; /* target node, if label */ + node *endnode; /* end node address, if block label */ /* information used for consistency checks */ int blabeldef; diff --git a/interpret.c b/interpret.c index a747167..33cb6c7 100644 --- a/interpret.c +++ b/interpret.c @@ -353,10 +353,11 @@ static void rewrite(node *tree) endnode->car->car->u.string) == 0) { found = TRUE; + np->syminf->endnode = endnode; break; } if (!found) - die("no END matching block label %s\n", sp->car->u.string); + die("no END matching %s BLOCK\n", sp->car->u.string); } /* rewrite code coes here */ -- 2.43.0