summaryrefslogtreecommitdiffstats
path: root/parser.y
diff options
context:
space:
mode:
Diffstat (limited to 'parser.y')
-rw-r--r--parser.y6
1 files changed, 5 insertions, 1 deletions
diff --git a/parser.y b/parser.y
index d829b4f7..409400f0 100644
--- a/parser.y
+++ b/parser.y
@@ -1519,7 +1519,11 @@ static val extract_vars(val output_spec)
}
}
}
- } else if (sym != expr_s) {
+ } else if (sym == expr_s) {
+ val expr = second(output_spec);
+ val frefs = expand_with_free_refs(expr, nil, nil);
+ tai = list_collect_nconc(tai, second(frefs));
+ } else {
for (; output_spec; output_spec = cdr(output_spec))
tai = list_collect_nconc(tai, extract_vars(car(output_spec)));
}