Fix: dit not handle multiple POINTER TO constructs right

This commit is contained in:
ceriel 1994-05-25 12:10:59 +00:00
parent f06b39f112
commit 96172158e5
2 changed files with 4 additions and 0 deletions

View file

@ -112,6 +112,7 @@ chk_forw(pdf)
while (df = *pdf) { while (df = *pdf) {
if (df->df_kind == D_FORWTYPE) { if (df->df_kind == D_FORWTYPE) {
pdf = &df->df_nextinscope;
ForceForwardTypeDef(df); /* removes df */ ForceForwardTypeDef(df); /* removes df */
continue; continue;
} }

View file

@ -725,6 +725,9 @@ ForceForwardTypeDef(df)
} }
df = df->df_forw_def; df = df->df_forw_def;
} }
while (nd->nd_class == Link) {
nd = nd->nd_RIGHT;
}
df = lookfor(nd, CurrVis, 1, 0); df = lookfor(nd, CurrVis, 1, 0);
if (! df->df_kind & (D_ERROR|D_TYPE)) { if (! df->df_kind & (D_ERROR|D_TYPE)) {
node_error(nd, "\"%s\" is not a type", df1->df_idf->id_text); node_error(nd, "\"%s\" is not a type", df1->df_idf->id_text);