if (g_hash_table_lookup_extended (first, symbol, NULL,
(gpointer*) &first_set))
{
- g_hash_table_foreach (first->terminals, put_key_on_list, &l);
+ if (first_set->has_empty)
+ l = g_list_prepend (l, symbol_new (TRUE, 0));
+ g_hash_table_foreach (first_set->terminals, put_key_on_list, &l);
}
return l;