aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Aparício <aparicio99@gmail.com>2012-07-16 21:38:28 +0100
committerMu Qiao <qiaomuf@gentoo.org>2012-07-20 09:20:22 +0800
commit1c01ffc3d49a910445c86b76999cd62531ab3e91 (patch)
tree9279b0ed8edad49cf6a1b94ed588c55d3c33a508 /bashast
parent Parser: Support line continuation inside keyword test (diff)
downloadlibbash-1c01ffc3d49a910445c86b76999cd62531ab3e91.tar.gz
libbash-1c01ffc3d49a910445c86b76999cd62531ab3e91.tar.bz2
libbash-1c01ffc3d49a910445c86b76999cd62531ab3e91.zip
Walker: Support local declaration inside eval
Diffstat (limited to 'bashast')
-rw-r--r--bashast/libbashWalker.g2
1 files changed, 1 insertions, 1 deletions
diff --git a/bashast/libbashWalker.g b/bashast/libbashWalker.g
index 42a8917..44cb4c2 100644
--- a/bashast/libbashWalker.g
+++ b/bashast/libbashWalker.g
@@ -650,7 +650,7 @@ execute_command[std::string& name, std::vector<std::string>& libbash_args]
bool redirection = false;
}
@init {
- if(name != "local" && name != "set" && name != "declare")
+ if(name != "local" && name != "set" && name != "declare" && name != "eval")
current_scope.reset(new interpreter::local_scope(*walker));
}
:var_def[true]* (redirect[out, err, in]{ redirection = true; })* {