Commit 896fc322 by Per Bothner

Improve cleaning up. See hangeLog.

From-SVN: r9554
parent 75410dc3
...@@ -123,18 +123,21 @@ delete_macro (hp) ...@@ -123,18 +123,21 @@ delete_macro (hp)
if (hp == *hp->bucket_hdr) if (hp == *hp->bucket_hdr)
*hp->bucket_hdr = hp->next; *hp->bucket_hdr = hp->next;
#if 0 if (hp->type == T_MACRO)
if (hp->type == T_MACRO) { {
DEFINITION *d = hp->value.defn; DEFINITION *d = hp->value.defn;
struct reflist *ap, *nextap; struct reflist *ap, *nextap;
for (ap = d->pattern; ap != NULL; ap = nextap) { for (ap = d->pattern; ap != NULL; ap = nextap)
nextap = ap->next; {
free (ap); nextap = ap->next;
free (ap);
}
if (d->nargs >= 0)
free (d->args.argnames);
free (d);
} }
free (d);
}
#endif
free (hp); free (hp);
} }
/* /*
...@@ -197,3 +200,15 @@ install (name, len, type, ivalue, value, hash) ...@@ -197,3 +200,15 @@ install (name, len, type, ivalue, value, hash)
hp->name[len] = 0; hp->name[len] = 0;
return hp; return hp;
} }
void
cpp_hash_cleanup (pfile)
cpp_reader *pfile;
{
register int i;
for (i = HASHSIZE; --i >= 0; )
{
while (hashtab[i])
delete_macro (hashtab[i]);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment