1 |
commit: 976e5bde79b1286fbf45f3ac2abcf124ade06d22 |
2 |
Author: Mu Qiao <qiaomuf <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Apr 11 01:31:05 2011 +0000 |
4 |
Commit: Petteri Räty <betelgeuse <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Apr 11 01:39:01 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/libbash.git;a=commit;h=976e5bde |
7 |
|
8 |
Add '#' to var_name wrt bug #362795 |
9 |
|
10 |
'#' is a valid variable name in variable expansion as it stands |
11 |
for the number of arguments. |
12 |
|
13 |
--- |
14 |
bashast/bashast.g | 2 +- |
15 |
bashast/gunit/param_main.gunit | 2 ++ |
16 |
2 files changed, 3 insertions(+), 1 deletions(-) |
17 |
|
18 |
diff --git a/bashast/bashast.g b/bashast/bashast.g |
19 |
index d8dfc77..31aa368 100644 |
20 |
--- a/bashast/bashast.g |
21 |
+++ b/bashast/bashast.g |
22 |
@@ -268,7 +268,7 @@ var_exp : var_name (USE_DEFAULT|USE_ALTERNATE|DISPLAY_ERROR|ASSIGN_DEFAULT)^ wor |
23 |
| TIMES |
24 |
| AT; |
25 |
//Allowable variable names in the variable expansion |
26 |
-var_name: num|name; |
27 |
+var_name: num|name|POUND; |
28 |
//Referencing an array variable |
29 |
arr_var_ref |
30 |
: name^ LSQUARE! DIGIT+ RSQUARE!; |
31 |
|
32 |
diff --git a/bashast/gunit/param_main.gunit b/bashast/gunit/param_main.gunit |
33 |
index a865e16..c6194de 100644 |
34 |
--- a/bashast/gunit/param_main.gunit |
35 |
+++ b/bashast/gunit/param_main.gunit |
36 |
@@ -43,7 +43,9 @@ var_ref: |
37 |
"$@" -> (VAR_REF @) |
38 |
"$*" -> (VAR_REF *) |
39 |
"${@}" -> (VAR_REF @) |
40 |
+"${#}" -> (VAR_REF #) |
41 |
"${!foo}" -> (VAR_REF (VAR_REF foo)) |
42 |
+"${!#}" -> (VAR_REF (VAR_REF #)) |
43 |
"${3}" -> (VAR_REF 3) |
44 |
"$?" -> (VAR_REF ?) |
45 |
"$_" -> (VAR_REF _) |