summaryrefslogtreecommitdiffstats
path: root/parsing/lexer.sh
diff options
context:
space:
mode:
authorP. J. McDermott <pj@pehjota.net>2016-02-20 18:04:48 (EST)
committer P. J. McDermott <pj@pehjota.net>2016-02-20 18:04:48 (EST)
commit0a72d231a7d42396e3551f38eb63d55fea100669 (patch)
tree2e5068a74632573d2c525b91e1924cad37629464 /parsing/lexer.sh
parent897bd7b6ae7514896dae3253e854db5edc0b8009 (diff)
downloadeggshell-0a72d231a7d42396e3551f38eb63d55fea100669.zip
eggshell-0a72d231a7d42396e3551f38eb63d55fea100669.tar.gz
eggshell-0a72d231a7d42396e3551f38eb63d55fea100669.tar.bz2
Rewrite codegen
The previous version didn't handle nested or multiple command substitutions. The stack format has also been extended to support arithmetic expansions.
Diffstat (limited to 'parsing/lexer.sh')
-rw-r--r--parsing/lexer.sh3
1 files changed, 2 insertions, 1 deletions
diff --git a/parsing/lexer.sh b/parsing/lexer.sh
index 3f6f52f..a7fbb80 100644
--- a/parsing/lexer.sh
+++ b/parsing/lexer.sh
@@ -467,7 +467,8 @@ scan_wordexp()
res="${res#*${RS}}"
toks="${res%%${RS}*}"
lineno=${ln_off}
- wordexp="\$(${STX}${toks}${ETX})"
+ wordexp="\$(${SOH}C${STX}${toks}"
+ wordexp="${wordexp}${ETX})"
# ")" is recognized in run_sublexer().
;;
esac