aboutsummaryrefslogtreecommitdiff
path: root/binutils/defparse.y
diff options
context:
space:
mode:
Diffstat (limited to 'binutils/defparse.y')
-rw-r--r--binutils/defparse.y6
1 files changed, 5 insertions, 1 deletions
diff --git a/binutils/defparse.y b/binutils/defparse.y
index 4040279..a2c4c4b 100644
--- a/binutils/defparse.y
+++ b/binutils/defparse.y
@@ -193,23 +193,27 @@ opt_name2: ID { $$ = $1; }
{
char *name = xmalloc (strlen ($2) + 2);
sprintf (name, ".%s", $2);
+ free ($2);
$$ = name;
}
| keyword_as_name '.' opt_name2
{
char *name = xmalloc (strlen ($1) + 1 + strlen ($3) + 1);
sprintf (name, "%s.%s", $1, $3);
+ free ($3);
$$ = name;
}
| ID '.' opt_name2
{
char *name = xmalloc (strlen ($1) + 1 + strlen ($3) + 1);
sprintf (name, "%s.%s", $1, $3);
+ free ($1);
+ free ($3);
$$ = name;
}
;
opt_name: opt_name2 { $$ =$1; }
- | { $$=""; }
+ | { $$ = xstrdup (""); }
;
opt_ordinal: