summaryrefslogtreecommitdiff
path: root/i/marvin
diff options
context:
space:
mode:
authorschodet2007-05-10 08:28:02 +0000
committerschodet2007-05-10 08:28:02 +0000
commit4daa2c76c2a028e4b2c8ab379e7d1e0f535a0a31 (patch)
treee00a9ca2e8a1cac08da75531ace727a5c7944c02 /i/marvin
parent5df1499504130b4d12bd507baf165c322babecdb (diff)
Fixed parser (assign $$).
Diffstat (limited to 'i/marvin')
-rw-r--r--i/marvin/src/parser/yyparser.yy8
1 files changed, 8 insertions, 0 deletions
diff --git a/i/marvin/src/parser/yyparser.yy b/i/marvin/src/parser/yyparser.yy
index 99d130a..86db4a5 100644
--- a/i/marvin/src/parser/yyparser.yy
+++ b/i/marvin/src/parser/yyparser.yy
@@ -212,42 +212,50 @@ arg_list:
any a ($2);
$1->push_back (any ());
$1->back ().swap (a);
+ $$ = $1;
}
| arg_list CHAR {
any a ($2);
$1->push_back (any ());
$1->back ().swap (a);
+ $$ = $1;
}
| arg_list INT {
any a ($2);
$1->push_back (any ());
$1->back ().swap (a);
+ $$ = $1;
}
| arg_list DOUBLE {
any a ($2);
$1->push_back (any ());
$1->back ().swap (a);
+ $$ = $1;
}
| arg_list STRING {
any a (*$2);
$1->push_back (any ());
$1->back ().swap (a);
delete $2;
+ $$ = $1;
}
| arg_list int_list {
$1->push_back (any ());
$1->back ().swap (*$2.a);
delete $2.a;
+ $$ = $1;
}
| arg_list double_list {
$1->push_back (any ());
$1->back ().swap (*$2.a);
delete $2.a;
+ $$ = $1;
}
| arg_list string_list {
$1->push_back (any ());
$1->back ().swap (*$2.a);
delete $2.a;
+ $$ = $1;
}
;
%%