- fixes: improved POINTER TO IDENT mechanism, prevent core dump when

definition module not found, corrected typo.
- changed mechanism for variables that have their address given.
- added option for symmetric integer ranges
This commit is contained in:
ceriel
1987-06-29 12:46:00 +00:00
parent b93c1cb093
commit efafb68f00
11 changed files with 57 additions and 21 deletions

View File

@@ -94,6 +94,7 @@ GetDefinitionModule(id, incr)
struct scopelist *vis;
char *fn = FileName;
int ln = LineNumber;
struct scope *newsc = CurrentScope;
level += incr;
df = lookup(id, GlobalScope, 1);
@@ -110,6 +111,7 @@ GetDefinitionModule(id, incr)
ForeignFlag = 0;
open_scope(CLOSEDSCOPE);
newsc = CurrentScope;
if (!is_anon_idf(id) && GetFile(id->id_text)) {
DefModule();
@@ -136,7 +138,7 @@ GetDefinitionModule(id, incr)
}
else {
df = lookup(id, GlobalScope, 1);
CurrentScope->sc_name = id->id_text;
newsc->sc_name = id->id_text;
}
vis = CurrVis;
close_scope(SC_CHKFORW);
@@ -145,6 +147,7 @@ GetDefinitionModule(id, incr)
df = MkDef(id, GlobalScope, D_ERROR);
df->df_type = error_type;
df->mod_vis = vis;
newsc->sc_definedby = df;
}
}
else if (df->df_flags & D_BUSY) {