mirror of
https://github.com/vishapoberon/compiler.git
synced 2026-04-06 05:12:26 +00:00
Accept all SET types in INCL.
This commit is contained in:
parent
1fa182c7ce
commit
2e02f9204c
18 changed files with 22 additions and 64 deletions
|
|
@ -1879,7 +1879,7 @@ void OPB_StPar0 (OPT_Node *par0, int16 fctno)
|
||||||
case 15: case 16:
|
case 15: case 16:
|
||||||
if (OPB_NotVar(x)) {
|
if (OPB_NotVar(x)) {
|
||||||
OPB_err(112);
|
OPB_err(112);
|
||||||
} else if (x->typ != OPT_settyp) {
|
} else if (x->typ->form != 7) {
|
||||||
OPB_err(111);
|
OPB_err(111);
|
||||||
x->typ = OPT_settyp;
|
x->typ = OPT_settyp;
|
||||||
} else if (x->readonly) {
|
} else if (x->readonly) {
|
||||||
|
|
@ -2044,7 +2044,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
if (x->class == 8 || x->class == 9) {
|
if (x->class == 8 || x->class == 9) {
|
||||||
OPB_err(126);
|
OPB_err(126);
|
||||||
} else if (f == 4) {
|
} else if (f == 4) {
|
||||||
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval > (int64)OPM_MaxSet))) {
|
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval >= (int64)__ASHL(p->typ->size, 3)))) {
|
||||||
OPB_err(202);
|
OPB_err(202);
|
||||||
}
|
}
|
||||||
p = NewOp__54(19, fctno, p, x);
|
p = NewOp__54(19, fctno, p, x);
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,6 @@ export int64 OPM_SymRInt64 (void);
|
||||||
export void OPM_SymRLReal (LONGREAL *lr);
|
export void OPM_SymRLReal (LONGREAL *lr);
|
||||||
export void OPM_SymRReal (REAL *r);
|
export void OPM_SymRReal (REAL *r);
|
||||||
export void OPM_SymRSet (uint32 *s);
|
export void OPM_SymRSet (uint32 *s);
|
||||||
export void OPM_SymRSet64 (uint64 *s);
|
|
||||||
export void OPM_SymWCh (CHAR ch);
|
export void OPM_SymWCh (CHAR ch);
|
||||||
export void OPM_SymWInt (int64 i);
|
export void OPM_SymWInt (int64 i);
|
||||||
export void OPM_SymWLReal (LONGREAL lr);
|
export void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
@ -759,11 +758,6 @@ int64 OPM_SymRInt64 (void)
|
||||||
return _o_result;
|
return _o_result;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OPM_SymRSet64 (uint64 *s)
|
|
||||||
{
|
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 8);
|
|
||||||
}
|
|
||||||
|
|
||||||
void OPM_SymRSet (uint32 *s)
|
void OPM_SymRSet (uint32 *s)
|
||||||
{
|
{
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,6 @@ import int64 OPM_SymRInt64 (void);
|
||||||
import void OPM_SymRLReal (LONGREAL *lr);
|
import void OPM_SymRLReal (LONGREAL *lr);
|
||||||
import void OPM_SymRReal (REAL *r);
|
import void OPM_SymRReal (REAL *r);
|
||||||
import void OPM_SymRSet (uint32 *s);
|
import void OPM_SymRSet (uint32 *s);
|
||||||
import void OPM_SymRSet64 (uint64 *s);
|
|
||||||
import void OPM_SymWCh (CHAR ch);
|
import void OPM_SymWCh (CHAR ch);
|
||||||
import void OPM_SymWInt (int64 i);
|
import void OPM_SymWInt (int64 i);
|
||||||
import void OPM_SymWLReal (LONGREAL lr);
|
import void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
|
||||||
|
|
@ -1879,7 +1879,7 @@ void OPB_StPar0 (OPT_Node *par0, int16 fctno)
|
||||||
case 15: case 16:
|
case 15: case 16:
|
||||||
if (OPB_NotVar(x)) {
|
if (OPB_NotVar(x)) {
|
||||||
OPB_err(112);
|
OPB_err(112);
|
||||||
} else if (x->typ != OPT_settyp) {
|
} else if (x->typ->form != 7) {
|
||||||
OPB_err(111);
|
OPB_err(111);
|
||||||
x->typ = OPT_settyp;
|
x->typ = OPT_settyp;
|
||||||
} else if (x->readonly) {
|
} else if (x->readonly) {
|
||||||
|
|
@ -2044,7 +2044,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
if (x->class == 8 || x->class == 9) {
|
if (x->class == 8 || x->class == 9) {
|
||||||
OPB_err(126);
|
OPB_err(126);
|
||||||
} else if (f == 4) {
|
} else if (f == 4) {
|
||||||
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval > (int64)OPM_MaxSet))) {
|
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval >= (int64)__ASHL(p->typ->size, 3)))) {
|
||||||
OPB_err(202);
|
OPB_err(202);
|
||||||
}
|
}
|
||||||
p = NewOp__54(19, fctno, p, x);
|
p = NewOp__54(19, fctno, p, x);
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,6 @@ export int64 OPM_SymRInt64 (void);
|
||||||
export void OPM_SymRLReal (LONGREAL *lr);
|
export void OPM_SymRLReal (LONGREAL *lr);
|
||||||
export void OPM_SymRReal (REAL *r);
|
export void OPM_SymRReal (REAL *r);
|
||||||
export void OPM_SymRSet (uint32 *s);
|
export void OPM_SymRSet (uint32 *s);
|
||||||
export void OPM_SymRSet64 (uint64 *s);
|
|
||||||
export void OPM_SymWCh (CHAR ch);
|
export void OPM_SymWCh (CHAR ch);
|
||||||
export void OPM_SymWInt (int64 i);
|
export void OPM_SymWInt (int64 i);
|
||||||
export void OPM_SymWLReal (LONGREAL lr);
|
export void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
@ -759,11 +758,6 @@ int64 OPM_SymRInt64 (void)
|
||||||
return _o_result;
|
return _o_result;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OPM_SymRSet64 (uint64 *s)
|
|
||||||
{
|
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 8);
|
|
||||||
}
|
|
||||||
|
|
||||||
void OPM_SymRSet (uint32 *s)
|
void OPM_SymRSet (uint32 *s)
|
||||||
{
|
{
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,6 @@ import int64 OPM_SymRInt64 (void);
|
||||||
import void OPM_SymRLReal (LONGREAL *lr);
|
import void OPM_SymRLReal (LONGREAL *lr);
|
||||||
import void OPM_SymRReal (REAL *r);
|
import void OPM_SymRReal (REAL *r);
|
||||||
import void OPM_SymRSet (uint32 *s);
|
import void OPM_SymRSet (uint32 *s);
|
||||||
import void OPM_SymRSet64 (uint64 *s);
|
|
||||||
import void OPM_SymWCh (CHAR ch);
|
import void OPM_SymWCh (CHAR ch);
|
||||||
import void OPM_SymWInt (int64 i);
|
import void OPM_SymWInt (int64 i);
|
||||||
import void OPM_SymWLReal (LONGREAL lr);
|
import void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
|
||||||
|
|
@ -1879,7 +1879,7 @@ void OPB_StPar0 (OPT_Node *par0, int16 fctno)
|
||||||
case 15: case 16:
|
case 15: case 16:
|
||||||
if (OPB_NotVar(x)) {
|
if (OPB_NotVar(x)) {
|
||||||
OPB_err(112);
|
OPB_err(112);
|
||||||
} else if (x->typ != OPT_settyp) {
|
} else if (x->typ->form != 7) {
|
||||||
OPB_err(111);
|
OPB_err(111);
|
||||||
x->typ = OPT_settyp;
|
x->typ = OPT_settyp;
|
||||||
} else if (x->readonly) {
|
} else if (x->readonly) {
|
||||||
|
|
@ -2044,7 +2044,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
if (x->class == 8 || x->class == 9) {
|
if (x->class == 8 || x->class == 9) {
|
||||||
OPB_err(126);
|
OPB_err(126);
|
||||||
} else if (f == 4) {
|
} else if (f == 4) {
|
||||||
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval > (int64)OPM_MaxSet))) {
|
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval >= (int64)__ASHL(p->typ->size, 3)))) {
|
||||||
OPB_err(202);
|
OPB_err(202);
|
||||||
}
|
}
|
||||||
p = NewOp__54(19, fctno, p, x);
|
p = NewOp__54(19, fctno, p, x);
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,6 @@ export int64 OPM_SymRInt64 (void);
|
||||||
export void OPM_SymRLReal (LONGREAL *lr);
|
export void OPM_SymRLReal (LONGREAL *lr);
|
||||||
export void OPM_SymRReal (REAL *r);
|
export void OPM_SymRReal (REAL *r);
|
||||||
export void OPM_SymRSet (uint32 *s);
|
export void OPM_SymRSet (uint32 *s);
|
||||||
export void OPM_SymRSet64 (uint64 *s);
|
|
||||||
export void OPM_SymWCh (CHAR ch);
|
export void OPM_SymWCh (CHAR ch);
|
||||||
export void OPM_SymWInt (int64 i);
|
export void OPM_SymWInt (int64 i);
|
||||||
export void OPM_SymWLReal (LONGREAL lr);
|
export void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
@ -759,11 +758,6 @@ int64 OPM_SymRInt64 (void)
|
||||||
return _o_result;
|
return _o_result;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OPM_SymRSet64 (uint64 *s)
|
|
||||||
{
|
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 8);
|
|
||||||
}
|
|
||||||
|
|
||||||
void OPM_SymRSet (uint32 *s)
|
void OPM_SymRSet (uint32 *s)
|
||||||
{
|
{
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,6 @@ import int64 OPM_SymRInt64 (void);
|
||||||
import void OPM_SymRLReal (LONGREAL *lr);
|
import void OPM_SymRLReal (LONGREAL *lr);
|
||||||
import void OPM_SymRReal (REAL *r);
|
import void OPM_SymRReal (REAL *r);
|
||||||
import void OPM_SymRSet (uint32 *s);
|
import void OPM_SymRSet (uint32 *s);
|
||||||
import void OPM_SymRSet64 (uint64 *s);
|
|
||||||
import void OPM_SymWCh (CHAR ch);
|
import void OPM_SymWCh (CHAR ch);
|
||||||
import void OPM_SymWInt (int64 i);
|
import void OPM_SymWInt (int64 i);
|
||||||
import void OPM_SymWLReal (LONGREAL lr);
|
import void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
|
||||||
|
|
@ -1879,7 +1879,7 @@ void OPB_StPar0 (OPT_Node *par0, int16 fctno)
|
||||||
case 15: case 16:
|
case 15: case 16:
|
||||||
if (OPB_NotVar(x)) {
|
if (OPB_NotVar(x)) {
|
||||||
OPB_err(112);
|
OPB_err(112);
|
||||||
} else if (x->typ != OPT_settyp) {
|
} else if (x->typ->form != 7) {
|
||||||
OPB_err(111);
|
OPB_err(111);
|
||||||
x->typ = OPT_settyp;
|
x->typ = OPT_settyp;
|
||||||
} else if (x->readonly) {
|
} else if (x->readonly) {
|
||||||
|
|
@ -2044,7 +2044,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
if (x->class == 8 || x->class == 9) {
|
if (x->class == 8 || x->class == 9) {
|
||||||
OPB_err(126);
|
OPB_err(126);
|
||||||
} else if (f == 4) {
|
} else if (f == 4) {
|
||||||
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval > (int64)OPM_MaxSet))) {
|
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval >= (int64)__ASHL(p->typ->size, 3)))) {
|
||||||
OPB_err(202);
|
OPB_err(202);
|
||||||
}
|
}
|
||||||
p = NewOp__54(19, fctno, p, x);
|
p = NewOp__54(19, fctno, p, x);
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,6 @@ export int64 OPM_SymRInt64 (void);
|
||||||
export void OPM_SymRLReal (LONGREAL *lr);
|
export void OPM_SymRLReal (LONGREAL *lr);
|
||||||
export void OPM_SymRReal (REAL *r);
|
export void OPM_SymRReal (REAL *r);
|
||||||
export void OPM_SymRSet (uint32 *s);
|
export void OPM_SymRSet (uint32 *s);
|
||||||
export void OPM_SymRSet64 (uint64 *s);
|
|
||||||
export void OPM_SymWCh (CHAR ch);
|
export void OPM_SymWCh (CHAR ch);
|
||||||
export void OPM_SymWInt (int64 i);
|
export void OPM_SymWInt (int64 i);
|
||||||
export void OPM_SymWLReal (LONGREAL lr);
|
export void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
@ -759,11 +758,6 @@ int64 OPM_SymRInt64 (void)
|
||||||
return _o_result;
|
return _o_result;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OPM_SymRSet64 (uint64 *s)
|
|
||||||
{
|
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 8);
|
|
||||||
}
|
|
||||||
|
|
||||||
void OPM_SymRSet (uint32 *s)
|
void OPM_SymRSet (uint32 *s)
|
||||||
{
|
{
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,6 @@ import int64 OPM_SymRInt64 (void);
|
||||||
import void OPM_SymRLReal (LONGREAL *lr);
|
import void OPM_SymRLReal (LONGREAL *lr);
|
||||||
import void OPM_SymRReal (REAL *r);
|
import void OPM_SymRReal (REAL *r);
|
||||||
import void OPM_SymRSet (uint32 *s);
|
import void OPM_SymRSet (uint32 *s);
|
||||||
import void OPM_SymRSet64 (uint64 *s);
|
|
||||||
import void OPM_SymWCh (CHAR ch);
|
import void OPM_SymWCh (CHAR ch);
|
||||||
import void OPM_SymWInt (int64 i);
|
import void OPM_SymWInt (int64 i);
|
||||||
import void OPM_SymWLReal (LONGREAL lr);
|
import void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
|
||||||
|
|
@ -1879,7 +1879,7 @@ void OPB_StPar0 (OPT_Node *par0, int16 fctno)
|
||||||
case 15: case 16:
|
case 15: case 16:
|
||||||
if (OPB_NotVar(x)) {
|
if (OPB_NotVar(x)) {
|
||||||
OPB_err(112);
|
OPB_err(112);
|
||||||
} else if (x->typ != OPT_settyp) {
|
} else if (x->typ->form != 7) {
|
||||||
OPB_err(111);
|
OPB_err(111);
|
||||||
x->typ = OPT_settyp;
|
x->typ = OPT_settyp;
|
||||||
} else if (x->readonly) {
|
} else if (x->readonly) {
|
||||||
|
|
@ -2044,7 +2044,7 @@ void OPB_StPar1 (OPT_Node *par0, OPT_Node x, int8 fctno)
|
||||||
if (x->class == 8 || x->class == 9) {
|
if (x->class == 8 || x->class == 9) {
|
||||||
OPB_err(126);
|
OPB_err(126);
|
||||||
} else if (f == 4) {
|
} else if (f == 4) {
|
||||||
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval > (int64)OPM_MaxSet))) {
|
if ((x->class == 7 && (0 > x->conval->intval || x->conval->intval >= (int64)__ASHL(p->typ->size, 3)))) {
|
||||||
OPB_err(202);
|
OPB_err(202);
|
||||||
}
|
}
|
||||||
p = NewOp__54(19, fctno, p, x);
|
p = NewOp__54(19, fctno, p, x);
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,6 @@ export int64 OPM_SymRInt64 (void);
|
||||||
export void OPM_SymRLReal (LONGREAL *lr);
|
export void OPM_SymRLReal (LONGREAL *lr);
|
||||||
export void OPM_SymRReal (REAL *r);
|
export void OPM_SymRReal (REAL *r);
|
||||||
export void OPM_SymRSet (uint32 *s);
|
export void OPM_SymRSet (uint32 *s);
|
||||||
export void OPM_SymRSet64 (uint64 *s);
|
|
||||||
export void OPM_SymWCh (CHAR ch);
|
export void OPM_SymWCh (CHAR ch);
|
||||||
export void OPM_SymWInt (int64 i);
|
export void OPM_SymWInt (int64 i);
|
||||||
export void OPM_SymWLReal (LONGREAL lr);
|
export void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
@ -759,11 +758,6 @@ int64 OPM_SymRInt64 (void)
|
||||||
return _o_result;
|
return _o_result;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OPM_SymRSet64 (uint64 *s)
|
|
||||||
{
|
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 8);
|
|
||||||
}
|
|
||||||
|
|
||||||
void OPM_SymRSet (uint32 *s)
|
void OPM_SymRSet (uint32 *s)
|
||||||
{
|
{
|
||||||
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
Files_ReadNum(&OPM_oldSF, Files_Rider__typ, (void*)&*s, 4);
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,6 @@ import int64 OPM_SymRInt64 (void);
|
||||||
import void OPM_SymRLReal (LONGREAL *lr);
|
import void OPM_SymRLReal (LONGREAL *lr);
|
||||||
import void OPM_SymRReal (REAL *r);
|
import void OPM_SymRReal (REAL *r);
|
||||||
import void OPM_SymRSet (uint32 *s);
|
import void OPM_SymRSet (uint32 *s);
|
||||||
import void OPM_SymRSet64 (uint64 *s);
|
|
||||||
import void OPM_SymWCh (CHAR ch);
|
import void OPM_SymWCh (CHAR ch);
|
||||||
import void OPM_SymWInt (int64 i);
|
import void OPM_SymWInt (int64 i);
|
||||||
import void OPM_SymWLReal (LONGREAL lr);
|
import void OPM_SymWLReal (LONGREAL lr);
|
||||||
|
|
|
||||||
|
|
@ -811,11 +811,11 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *)
|
||||||
ELSE err(201); x^.conval^.setval := {l..k}
|
ELSE err(201); x^.conval^.setval := {l..k}
|
||||||
END ;
|
END ;
|
||||||
x^.obj := NIL
|
x^.obj := NIL
|
||||||
ELSE BindNodes(OPT.Nupto, OPT.settyp, x, y)
|
ELSE BindNodes(OPT.Nupto, OPT.settyp, x, y) (* todo choose appropriate set type ? *)
|
||||||
END
|
END
|
||||||
ELSE err(93)
|
ELSE err(93)
|
||||||
END ;
|
END ;
|
||||||
x^.typ := OPT.settyp
|
x^.typ := OPT.settyp (* todo choose appropriate set type ? *)
|
||||||
END SetRange;
|
END SetRange;
|
||||||
|
|
||||||
PROCEDURE SetElem*(VAR x: OPT.Node);
|
PROCEDURE SetElem*(VAR x: OPT.Node);
|
||||||
|
|
@ -829,9 +829,9 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *)
|
||||||
ELSE err(202)
|
ELSE err(202)
|
||||||
END ;
|
END ;
|
||||||
x^.obj := NIL
|
x^.obj := NIL
|
||||||
ELSE Convert(x, OPT.settyp)
|
ELSE Convert(x, OPT.settyp) (* todo choose appropriate set type ? *)
|
||||||
END ;
|
END ;
|
||||||
x^.typ := OPT.settyp
|
x^.typ := OPT.settyp (* todo choose appropriate set type ? *)
|
||||||
END SetElem;
|
END SetElem;
|
||||||
|
|
||||||
PROCEDURE CheckAssign(x: OPT.Struct; ynode: OPT.Node); (* x := y *)
|
PROCEDURE CheckAssign(x: OPT.Struct; ynode: OPT.Node); (* x := y *)
|
||||||
|
|
@ -1027,7 +1027,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *)
|
||||||
|OPT.inclfn,
|
|OPT.inclfn,
|
||||||
OPT.exclfn: (*INCL, EXCL*)
|
OPT.exclfn: (*INCL, EXCL*)
|
||||||
IF NotVar(x) THEN err(112)
|
IF NotVar(x) THEN err(112)
|
||||||
ELSIF x^.typ # OPT.settyp THEN err(111); x^.typ := OPT.settyp
|
ELSIF x.typ.form # OPT.Set THEN err(111); x^.typ := OPT.settyp
|
||||||
ELSIF x^.readonly THEN err(76)
|
ELSIF x^.readonly THEN err(76)
|
||||||
END
|
END
|
||||||
|OPT.lenfn: (*LEN*)
|
|OPT.lenfn: (*LEN*)
|
||||||
|
|
@ -1124,8 +1124,8 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *)
|
||||||
OPT.exclfn: (*INCL, EXCL*)
|
OPT.exclfn: (*INCL, EXCL*)
|
||||||
IF (x^.class = OPT.Ntype) OR (x^.class = OPT.Nproc) THEN err(126)
|
IF (x^.class = OPT.Ntype) OR (x^.class = OPT.Nproc) THEN err(126)
|
||||||
ELSIF f = OPT.Int THEN
|
ELSIF f = OPT.Int THEN
|
||||||
IF (x^.class = OPT.Nconst) & ((0 > x^.conval^.intval) OR (x^.conval^.intval > OPM.MaxSet)) THEN err(202)
|
IF (x^.class = OPT.Nconst) & ((0 > x^.conval^.intval) OR (x^.conval^.intval >= p.typ.size*8)) THEN err(202)
|
||||||
END ;
|
END;
|
||||||
p := NewOp(OPT.Nassign, fctno, p, x)
|
p := NewOp(OPT.Nassign, fctno, p, x)
|
||||||
ELSE err(111)
|
ELSE err(111)
|
||||||
END ;
|
END ;
|
||||||
|
|
|
||||||
|
|
@ -552,7 +552,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *)
|
||||||
END FPrint;
|
END FPrint;
|
||||||
|
|
||||||
|
|
||||||
PROCEDURE FPrintSet*(VAR fp: LONGINT; set: SET);
|
PROCEDURE FPrintSet*(VAR fp: LONGINT; set: SET); (*SYSTEM.SET64);*)
|
||||||
BEGIN FPrint(fp, SYSTEM.VAL(LONGINT, set))
|
BEGIN FPrint(fp, SYSTEM.VAL(LONGINT, set))
|
||||||
END FPrintSet;
|
END FPrintSet;
|
||||||
|
|
||||||
|
|
@ -603,12 +603,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *)
|
||||||
BEGIN Files.ReadNum(oldSF, k); RETURN k
|
BEGIN Files.ReadNum(oldSF, k); RETURN k
|
||||||
END SymRInt64;
|
END SymRInt64;
|
||||||
|
|
||||||
(* todo - combine RSet64 and RSet *)
|
PROCEDURE SymRSet*(VAR s: SET); (*SYSTEM.SET64);*)
|
||||||
PROCEDURE SymRSet64*(VAR s: SYSTEM.SET64);
|
|
||||||
BEGIN Files.ReadNum(oldSF, s)
|
|
||||||
END SymRSet64;
|
|
||||||
|
|
||||||
PROCEDURE SymRSet*(VAR s: SET);
|
|
||||||
BEGIN Files.ReadNum(oldSF, s)
|
BEGIN Files.ReadNum(oldSF, s)
|
||||||
END SymRSet;
|
END SymRSet;
|
||||||
|
|
||||||
|
|
@ -653,7 +648,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *)
|
||||||
BEGIN Files.WriteNum(newSF, i)
|
BEGIN Files.WriteNum(newSF, i)
|
||||||
END SymWInt;
|
END SymWInt;
|
||||||
|
|
||||||
(* todo
|
(*
|
||||||
PROCEDURE SymWSet*(s: SYSTEM.SET64);
|
PROCEDURE SymWSet*(s: SYSTEM.SET64);
|
||||||
BEGIN Files.WriteNum(newSF, SYSTEM.VAL(SYSTEM.INT64, s))
|
BEGIN Files.WriteNum(newSF, SYSTEM.VAL(SYSTEM.INT64, s))
|
||||||
END SymWSet;
|
END SymWSet;
|
||||||
|
|
|
||||||
|
|
@ -15,9 +15,7 @@ TYPE
|
||||||
ext*: ConstExt; (* string or code for code proc *)
|
ext*: ConstExt; (* string or code for code proc *)
|
||||||
intval*: SYSTEM.INT64; (* constant value or adr, proc par size, text position or least case label *)
|
intval*: SYSTEM.INT64; (* constant value or adr, proc par size, text position or least case label *)
|
||||||
intval2*: LONGINT; (* string length, proc var size or larger case label *)
|
intval2*: LONGINT; (* string length, proc var size or larger case label *)
|
||||||
(* todo
|
(*setval*: SYSTEM.SET64;*) (* constant value, procedure body present or "ELSE" present in case *)
|
||||||
setval*: SYSTEM.SET64; (* constant value, procedure body present or "ELSE" present in case *)
|
|
||||||
*)
|
|
||||||
setval*: SET; (* constant value, procedure body present or "ELSE" present in case *)
|
setval*: SET; (* constant value, procedure body present or "ELSE" present in case *)
|
||||||
realval*: LONGREAL (* real or longreal constant value *)
|
realval*: LONGREAL (* real or longreal constant value *)
|
||||||
END;
|
END;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue