$(ALLOCLIB) $(MALLOC) $(SYSLIB)
LIB_INCLUDES = -I$(EMHOME)/modules/h -I$(EMHOME)/modules/pkg
EM_INCLUDES = -I$(EMHOME)/h
-SYSLLIB = $(EMHOME)/modules/lib/llib-lsys.ln
+SYSLLIB = $(EMHOME)/modules/lib/llib-lsystem.ln
EMKLLIB = $(EMHOME)/modules/lib/llib-lemk.ln
EMELLIB = $(EMHOME)/modules/lib/llib-leme.ln
-STRLLIB = $(EMHOME)/modules/lib/llib-lstr.ln
+STRLLIB = $(EMHOME)/modules/lib/llib-lstring.ln
PRTLLIB = $(EMHOME)/modules/lib/llib-lprint.ln
-EMMESLLIB = $(EMHOME)/modules/lib/llib-lmes.ln
+EMMESLLIB = $(EMHOME)/modules/lib/llib-lem_mes.ln
INPLLIB = $(EMHOME)/modules/lib/llib-linput.ln
ALLOCLLIB = $(EMHOME)/modules/lib/llib-lalloc.ln
-LINTLIBS =
-#LINTLIBS = $(EMMESLLIB) $(EMKLLIB) $(PRTLLIB) $(STRLLIB) $(SYSLLIB) $(ALLOCLLIB)
+#LINTLIBS =
+LINTLIBS = $(EMMESLLIB) $(EMKLLIB) $(PRTLLIB) $(STRLLIB) $(ALLOCLLIB) $(SYSLLIB)
CURRDIR = .
COPTIONS =
any2opnd(expp, oper);
any2opnd(&expr, oper);
switch (oper) {
- int fund;
case '[': /* RM 7.1 */
/* RM 14.3 states that indexing follows the commutative laws */
switch ((*expp)->ex_type->tp_fund) {
case '/':
case DIVAB:
case TIMESAB:
- fund = arithbalance(expp, oper, &expr);
+ arithbalance(expp, oper, &expr);
non_commutative_binop(expp, oper, expr);
break;
case '&':
opnd2integral(&expr, oper);
/* Fall through */
case '*':
- fund = arithbalance(expp, oper, &expr);
+ arithbalance(expp, oper, &expr);
commutative_binop(expp, oper, expr);
break;
case '+':
pointer_binary(expp, oper, expr);
}
else {
- fund = arithbalance(expp, oper, &expr);
+ arithbalance(expp, oper, &expr);
if (oper == '+')
commutative_binop(expp, oper, expr);
else
}
}
else {
- fund = arithbalance(expp, oper, &expr);
+ arithbalance(expp, oper, &expr);
non_commutative_binop(expp, oper, expr);
}
break;
case RIGHTAB:
opnd2integral(expp, oper);
opnd2integral(&expr, oper);
- fund = arithbalance(expp, oper, &expr); /* ch. 7.5 */
+ arithbalance(expp, oper, &expr); /* ch. 7.5 */
ch7cast(&expr, oper, int_type); /* cvt. rightop to int */
non_commutative_binop(expp, oper, expr);
break;
warning("redeclaring reserved word %s", idf->id_text);
}
#endif
- if (def && def->df_level >= lvl) {
+ if (def &&
+ ( def->df_level == lvl ||
+ ( lvl != L_GLOBAL && def->df_level > lvl )
+ )
+ ) {
/* There is already a declaration for idf on this
level, or even more inside.
The rules differ for different levels.