removed warning and fixed two problems:
- remove_def was wrong, and parameter defs should not be removed at the end of a scope
This commit is contained in:
parent
4c26480d25
commit
8061bab6a9
|
@ -23,8 +23,8 @@ remove_def(df)
|
|||
else {
|
||||
while( df1 && df1->df_next != df ) df1 = df1->df_next;
|
||||
df1->df_next = df->df_next;
|
||||
free_def(df);
|
||||
}
|
||||
free_def(df);
|
||||
}
|
||||
|
||||
struct def *
|
||||
|
|
|
@ -55,7 +55,7 @@ close_scope(doclean)
|
|||
df = CurrentScope->sc_def;
|
||||
if (doclean) while (df) {
|
||||
struct def *next = df->df_nextinscope;
|
||||
remove_def(df);
|
||||
if (! (df->df_flags & (D_VARPAR|D_VALPAR))) remove_def(df);
|
||||
df = next;
|
||||
}
|
||||
CurrVis = CurrVis->next;
|
||||
|
|
|
@ -86,8 +86,10 @@ TstCompat(tp1, tp2)
|
|||
if( IsPacked(tp1) != IsPacked(tp2) )
|
||||
return 0;
|
||||
if( TstCompat(ElementType(tp1), ElementType(tp2)) ) {
|
||||
/*
|
||||
if( ElementType(tp1) != ElementType(tp2) )
|
||||
warning("base-types of sets not equal");
|
||||
*/
|
||||
return 1;
|
||||
}
|
||||
else return 0;
|
||||
|
|
Loading…
Reference in a new issue