diff --git a/tools/widl/parser.y b/tools/widl/parser.y index 745056f1b7a..eb9b2c9fd45 100644 --- a/tools/widl/parser.y +++ b/tools/widl/parser.y @@ -845,7 +845,7 @@ uniondef: tUNION t_ident '{' fields '}' { $$ = get_typev(RPC_FC_NON_ENCAPSULATE m_ident '{' cases '}' { var_t *u = $7; $$ = get_typev(RPC_FC_ENCAPSULATED_UNION, $2, tsUNION); $$->kind = TKIND_UNION; - if (!u) u = make_var("tagged_union"); + if (!u) u = make_var( xstrdup("tagged_union") ); u->type = make_type(RPC_FC_NON_ENCAPSULATED_UNION, NULL); u->type->kind = TKIND_UNION; u->type->fields = $9;