mirror of
https://github.com/vishapoberon/compiler.git
synced 2026-04-06 18:02:25 +00:00
Revert LEN() to returnng LONGINT
This commit is contained in:
parent
b40dc4e2f8
commit
7b8eed9993
7 changed files with 13 additions and 12 deletions
|
|
@ -2067,7 +2067,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
x->conval->intval += 1;
|
x->conval->intval += 1;
|
||||||
}
|
}
|
||||||
p = NewOp__53(12, 19, p, x);
|
p = NewOp__53(12, 19, p, x);
|
||||||
p->typ = OPT_adrtyp;
|
p->typ = OPT_linttyp;
|
||||||
} else {
|
} else {
|
||||||
p = x;
|
p = x;
|
||||||
p->conval->intval = typ->n;
|
p->conval->intval = typ->n;
|
||||||
|
|
@ -2323,7 +2323,7 @@ void OPB_StFct (OPT_Node *par0, int8 fctno, int16 parno)
|
||||||
p = p->left;
|
p = p->left;
|
||||||
dim += 1;
|
dim += 1;
|
||||||
}
|
}
|
||||||
OPB_BindNodes(12, OPT_adrtyp, &p, OPB_NewIntConst(dim));
|
OPB_BindNodes(12, OPT_linttyp, &p, OPB_NewIntConst(dim));
|
||||||
p->subcl = 19;
|
p->subcl = 19;
|
||||||
} else {
|
} else {
|
||||||
p = OPB_NewIntConst(p->typ->n);
|
p = OPB_NewIntConst(p->typ->n);
|
||||||
|
|
|
||||||
|
|
@ -2067,7 +2067,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
x->conval->intval += 1;
|
x->conval->intval += 1;
|
||||||
}
|
}
|
||||||
p = NewOp__53(12, 19, p, x);
|
p = NewOp__53(12, 19, p, x);
|
||||||
p->typ = OPT_adrtyp;
|
p->typ = OPT_linttyp;
|
||||||
} else {
|
} else {
|
||||||
p = x;
|
p = x;
|
||||||
p->conval->intval = typ->n;
|
p->conval->intval = typ->n;
|
||||||
|
|
@ -2323,7 +2323,7 @@ void OPB_StFct (OPT_Node *par0, int8 fctno, int16 parno)
|
||||||
p = p->left;
|
p = p->left;
|
||||||
dim += 1;
|
dim += 1;
|
||||||
}
|
}
|
||||||
OPB_BindNodes(12, OPT_adrtyp, &p, OPB_NewIntConst(dim));
|
OPB_BindNodes(12, OPT_linttyp, &p, OPB_NewIntConst(dim));
|
||||||
p->subcl = 19;
|
p->subcl = 19;
|
||||||
} else {
|
} else {
|
||||||
p = OPB_NewIntConst(p->typ->n);
|
p = OPB_NewIntConst(p->typ->n);
|
||||||
|
|
|
||||||
|
|
@ -2067,7 +2067,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
x->conval->intval += 1;
|
x->conval->intval += 1;
|
||||||
}
|
}
|
||||||
p = NewOp__53(12, 19, p, x);
|
p = NewOp__53(12, 19, p, x);
|
||||||
p->typ = OPT_adrtyp;
|
p->typ = OPT_linttyp;
|
||||||
} else {
|
} else {
|
||||||
p = x;
|
p = x;
|
||||||
p->conval->intval = typ->n;
|
p->conval->intval = typ->n;
|
||||||
|
|
@ -2323,7 +2323,7 @@ void OPB_StFct (OPT_Node *par0, int8 fctno, int32 parno)
|
||||||
p = p->left;
|
p = p->left;
|
||||||
dim += 1;
|
dim += 1;
|
||||||
}
|
}
|
||||||
OPB_BindNodes(12, OPT_adrtyp, &p, OPB_NewIntConst(dim));
|
OPB_BindNodes(12, OPT_linttyp, &p, OPB_NewIntConst(dim));
|
||||||
p->subcl = 19;
|
p->subcl = 19;
|
||||||
} else {
|
} else {
|
||||||
p = OPB_NewIntConst(p->typ->n);
|
p = OPB_NewIntConst(p->typ->n);
|
||||||
|
|
|
||||||
|
|
@ -2067,7 +2067,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
x->conval->intval += 1;
|
x->conval->intval += 1;
|
||||||
}
|
}
|
||||||
p = NewOp__53(12, 19, p, x);
|
p = NewOp__53(12, 19, p, x);
|
||||||
p->typ = OPT_adrtyp;
|
p->typ = OPT_linttyp;
|
||||||
} else {
|
} else {
|
||||||
p = x;
|
p = x;
|
||||||
p->conval->intval = typ->n;
|
p->conval->intval = typ->n;
|
||||||
|
|
@ -2323,7 +2323,7 @@ void OPB_StFct (OPT_Node *par0, int8 fctno, int16 parno)
|
||||||
p = p->left;
|
p = p->left;
|
||||||
dim += 1;
|
dim += 1;
|
||||||
}
|
}
|
||||||
OPB_BindNodes(12, OPT_adrtyp, &p, OPB_NewIntConst(dim));
|
OPB_BindNodes(12, OPT_linttyp, &p, OPB_NewIntConst(dim));
|
||||||
p->subcl = 19;
|
p->subcl = 19;
|
||||||
} else {
|
} else {
|
||||||
p = OPB_NewIntConst(p->typ->n);
|
p = OPB_NewIntConst(p->typ->n);
|
||||||
|
|
|
||||||
|
|
@ -2067,7 +2067,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
x->conval->intval += 1;
|
x->conval->intval += 1;
|
||||||
}
|
}
|
||||||
p = NewOp__53(12, 19, p, x);
|
p = NewOp__53(12, 19, p, x);
|
||||||
p->typ = OPT_adrtyp;
|
p->typ = OPT_linttyp;
|
||||||
} else {
|
} else {
|
||||||
p = x;
|
p = x;
|
||||||
p->conval->intval = typ->n;
|
p->conval->intval = typ->n;
|
||||||
|
|
@ -2323,7 +2323,7 @@ void OPB_StFct (OPT_Node *par0, int8 fctno, int32 parno)
|
||||||
p = p->left;
|
p = p->left;
|
||||||
dim += 1;
|
dim += 1;
|
||||||
}
|
}
|
||||||
OPB_BindNodes(12, OPT_adrtyp, &p, OPB_NewIntConst(dim));
|
OPB_BindNodes(12, OPT_linttyp, &p, OPB_NewIntConst(dim));
|
||||||
p->subcl = 19;
|
p->subcl = 19;
|
||||||
} else {
|
} else {
|
||||||
p = OPB_NewIntConst(p->typ->n);
|
p = OPB_NewIntConst(p->typ->n);
|
||||||
|
|
|
||||||
|
|
@ -1124,7 +1124,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *)
|
||||||
ELSE x^.obj := NIL;
|
ELSE x^.obj := NIL;
|
||||||
IF typ^.comp = OPT.DynArr THEN
|
IF typ^.comp = OPT.DynArr THEN
|
||||||
WHILE p^.class = OPT.Nindex DO p := p^.left; INC(x^.conval^.intval) END ; (* possible side effect ignored *)
|
WHILE p^.class = OPT.Nindex DO p := p^.left; INC(x^.conval^.intval) END ; (* possible side effect ignored *)
|
||||||
p := NewOp(OPT.Ndop, OPT.len, p, x); p^.typ := OPT.adrtyp
|
p := NewOp(OPT.Ndop, OPT.len, p, x); p^.typ := OPT.linttyp
|
||||||
ELSE p := x; p^.conval^.intval := typ^.n; SetIntType(p)
|
ELSE p := x; p^.conval^.intval := typ^.n; SetIntType(p)
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
|
|
@ -1293,7 +1293,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *)
|
||||||
ELSIF (fctno = OPT.lenfn) & (parno = 1) THEN (*LEN*)
|
ELSIF (fctno = OPT.lenfn) & (parno = 1) THEN (*LEN*)
|
||||||
IF p^.typ^.comp = OPT.DynArr THEN dim := 0;
|
IF p^.typ^.comp = OPT.DynArr THEN dim := 0;
|
||||||
WHILE p^.class = OPT.Nindex DO p := p^.left; INC(dim) END ; (* possible side effect ignored *)
|
WHILE p^.class = OPT.Nindex DO p := p^.left; INC(dim) END ; (* possible side effect ignored *)
|
||||||
BindNodes(OPT.Ndop, OPT.adrtyp, p, NewIntConst(dim)); p^.subcl := OPT.len
|
BindNodes(OPT.Ndop, OPT.linttyp, p, NewIntConst(dim)); p^.subcl := OPT.len
|
||||||
ELSE
|
ELSE
|
||||||
p := NewIntConst(p^.typ^.n)
|
p := NewIntConst(p^.typ^.n)
|
||||||
END
|
END
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@ FLAVOUR = $(OS).$(DATAMODEL).$(COMPILER)
|
||||||
BUILDDIR = build/$(FLAVOUR)
|
BUILDDIR = build/$(FLAVOUR)
|
||||||
VISHAP = $(ONAME)$(BINEXT)
|
VISHAP = $(ONAME)$(BINEXT)
|
||||||
|
|
||||||
|
# MODEL=-O2 # Override model - build everything as S8,I16,L32.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue