#include "type.h"
#include "warning.h"
-extern long str2long();
extern char *getwdir();
t_token dot,
break;
default:
crash("MkCoercion");
+ /*NOTREACHED*/
}
if (flt_status == FLT_OVFL) {
wmess = "conversion";
/* First, check BOTH operands */
- retval = ChkExpression(&(exp->nd_LEFT)) & ChkExpression(&(exp->nd_RIGHT));
+ retval = ChkExpression(&(exp->nd_LEFT));
+ retval &= ChkExpression(&(exp->nd_RIGHT));
tpl = BaseType(exp->nd_LEFT->nd_type);
tpr = BaseType(exp->nd_RIGHT->nd_type);
node_error(nd, "\"%s\" is not a type", df1->df_idf->id_text);
}
while (df1 && df1->df_kind == D_FORWTYPE) {
- t_def *df2 = df1->df_forw_def;
+ df2 = df1->df_forw_def;
df1->df_type = df->df_type;
SolveForwardTypeRefs(df1);
free_def(df1);
register t_def *df;
t_type *base_tp;
t_type *tpl, *tpr;
+ int r;
- if (!( ChkVariable(&(nd->nd_LEFT), D_USED|D_DEFINED) &
- ChkExpression(&(right->nd_LEFT)) &
- ChkExpression(&(right->nd_RIGHT)))) return 0;
+ r = ChkVariable(&(nd->nd_LEFT), D_USED|D_DEFINED);
+ r &= ChkExpression(&(right->nd_LEFT));
+ r &= ChkExpression(&(right->nd_RIGHT));
+ if (!r) return 0;
df = nd->nd_LEFT->nd_def;
if (df->df_kind == D_FIELD) {