Fix: dit not handle multiple POINTER TO constructs right
authorceriel <none@none>
Wed, 25 May 1994 12:10:59 +0000 (12:10 +0000)
committerceriel <none@none>
Wed, 25 May 1994 12:10:59 +0000 (12:10 +0000)
lang/m2/comp/scope.C
lang/m2/comp/type.c

index 30c9cf7..0308a93 100644 (file)
@@ -112,6 +112,7 @@ chk_forw(pdf)
 
        while (df = *pdf) {
                if (df->df_kind == D_FORWTYPE) {
+                       pdf = &df->df_nextinscope;
                        ForceForwardTypeDef(df);        /* removes df */
                        continue;
                }
index 06bba2f..b8f89a0 100644 (file)
@@ -725,6 +725,9 @@ ForceForwardTypeDef(df)
                }
                df = df->df_forw_def;
        }
+       while (nd->nd_class == Link) {
+               nd = nd->nd_RIGHT;
+       }
        df = lookfor(nd, CurrVis, 1, 0);
        if (! df->df_kind & (D_ERROR|D_TYPE)) {
                node_error(nd, "\"%s\" is not a type", df1->df_idf->id_text);