diff --git a/b2/subst.c b/b2/subst.c index ce64677..1bba496 100644 --- a/b2/subst.c +++ b/b2/subst.c @@ -395,6 +395,8 @@ static void recurse_fin(struct subst *sub, const struct parent *parent) case st_break: /* fall through */ case st_continue: + if (!parent) + yyerror("jump without block"); sub->u.jump = resolve_jump(sub->u.tmp, parent); break; default: diff --git a/b2/test/subcont b/b2/test/subcont index f22141f..a52c718 100755 --- a/b2/test/subcont +++ b/b2/test/subcont @@ -126,4 +126,15 @@ expect <