From f5e97fdd87475e71028d95ae37140ef425aae8d1 Mon Sep 17 00:00:00 2001 From: David Brown Date: Mon, 22 Aug 2016 13:03:47 +0100 Subject: [PATCH] Move symbol constants from OPM to OPS. --- bootstrap/unix-44/Configuration.c | 4 +- bootstrap/unix-44/Configuration.h | 2 +- bootstrap/unix-44/Console.c | 2 +- bootstrap/unix-44/Console.h | 2 +- bootstrap/unix-44/Files.c | 2 +- bootstrap/unix-44/Files.h | 2 +- bootstrap/unix-44/Heap.c | 2 +- bootstrap/unix-44/Heap.h | 2 +- bootstrap/unix-44/Modules.c | 2 +- bootstrap/unix-44/Modules.h | 2 +- bootstrap/unix-44/OPB.c | 2 +- bootstrap/unix-44/OPB.h | 2 +- bootstrap/unix-44/OPC.c | 2 +- bootstrap/unix-44/OPC.h | 2 +- bootstrap/unix-44/OPM.c | 2 +- bootstrap/unix-44/OPM.h | 2 +- bootstrap/unix-44/OPP.c | 2 +- bootstrap/unix-44/OPP.h | 2 +- bootstrap/unix-44/OPS.c | 2 +- bootstrap/unix-44/OPS.h | 2 +- bootstrap/unix-44/OPT.c | 16 +- bootstrap/unix-44/OPT.h | 2 +- bootstrap/unix-44/OPV.c | 8 +- bootstrap/unix-44/OPV.h | 2 +- bootstrap/unix-44/Platform.c | 2 +- bootstrap/unix-44/Platform.h | 2 +- bootstrap/unix-44/Reals.c | 2 +- bootstrap/unix-44/Reals.h | 2 +- bootstrap/unix-44/Strings.c | 2 +- bootstrap/unix-44/Strings.h | 2 +- bootstrap/unix-44/Texts.c | 2 +- bootstrap/unix-44/Texts.h | 2 +- bootstrap/unix-44/Vishap.c | 2 +- bootstrap/unix-44/errors.c | 2 +- bootstrap/unix-44/errors.h | 2 +- bootstrap/unix-44/extTools.c | 2 +- bootstrap/unix-44/extTools.h | 2 +- bootstrap/unix-44/vt100.c | 2 +- bootstrap/unix-44/vt100.h | 2 +- bootstrap/unix-48/Configuration.c | 4 +- bootstrap/unix-48/Configuration.h | 2 +- bootstrap/unix-48/Console.c | 2 +- bootstrap/unix-48/Console.h | 2 +- bootstrap/unix-48/Files.c | 2 +- bootstrap/unix-48/Files.h | 2 +- bootstrap/unix-48/Heap.c | 2 +- bootstrap/unix-48/Heap.h | 2 +- bootstrap/unix-48/Modules.c | 2 +- bootstrap/unix-48/Modules.h | 2 +- bootstrap/unix-48/OPB.c | 2 +- bootstrap/unix-48/OPB.h | 2 +- bootstrap/unix-48/OPC.c | 2 +- bootstrap/unix-48/OPC.h | 2 +- bootstrap/unix-48/OPM.c | 2 +- bootstrap/unix-48/OPM.h | 2 +- bootstrap/unix-48/OPP.c | 2 +- bootstrap/unix-48/OPP.h | 2 +- bootstrap/unix-48/OPS.c | 2 +- bootstrap/unix-48/OPS.h | 2 +- bootstrap/unix-48/OPT.c | 16 +- bootstrap/unix-48/OPT.h | 2 +- bootstrap/unix-48/OPV.c | 8 +- bootstrap/unix-48/OPV.h | 2 +- bootstrap/unix-48/Platform.c | 2 +- bootstrap/unix-48/Platform.h | 2 +- bootstrap/unix-48/Reals.c | 2 +- bootstrap/unix-48/Reals.h | 2 +- bootstrap/unix-48/Strings.c | 2 +- bootstrap/unix-48/Strings.h | 2 +- bootstrap/unix-48/Texts.c | 2 +- bootstrap/unix-48/Texts.h | 2 +- bootstrap/unix-48/Vishap.c | 2 +- bootstrap/unix-48/errors.c | 2 +- bootstrap/unix-48/errors.h | 2 +- bootstrap/unix-48/extTools.c | 2 +- bootstrap/unix-48/extTools.h | 2 +- bootstrap/unix-48/vt100.c | 2 +- bootstrap/unix-48/vt100.h | 2 +- bootstrap/unix-88/Configuration.c | 4 +- bootstrap/unix-88/Configuration.h | 2 +- bootstrap/unix-88/Console.c | 2 +- bootstrap/unix-88/Console.h | 2 +- bootstrap/unix-88/Files.c | 2 +- bootstrap/unix-88/Files.h | 2 +- bootstrap/unix-88/Heap.c | 2 +- bootstrap/unix-88/Heap.h | 2 +- bootstrap/unix-88/Modules.c | 2 +- bootstrap/unix-88/Modules.h | 2 +- bootstrap/unix-88/OPB.c | 2 +- bootstrap/unix-88/OPB.h | 2 +- bootstrap/unix-88/OPC.c | 2 +- bootstrap/unix-88/OPC.h | 2 +- bootstrap/unix-88/OPM.c | 2 +- bootstrap/unix-88/OPM.h | 2 +- bootstrap/unix-88/OPP.c | 2 +- bootstrap/unix-88/OPP.h | 2 +- bootstrap/unix-88/OPS.c | 2 +- bootstrap/unix-88/OPS.h | 2 +- bootstrap/unix-88/OPT.c | 16 +- bootstrap/unix-88/OPT.h | 2 +- bootstrap/unix-88/OPV.c | 8 +- bootstrap/unix-88/OPV.h | 2 +- bootstrap/unix-88/Platform.c | 2 +- bootstrap/unix-88/Platform.h | 2 +- bootstrap/unix-88/Reals.c | 2 +- bootstrap/unix-88/Reals.h | 2 +- bootstrap/unix-88/Strings.c | 2 +- bootstrap/unix-88/Strings.h | 2 +- bootstrap/unix-88/Texts.c | 2 +- bootstrap/unix-88/Texts.h | 2 +- bootstrap/unix-88/Vishap.c | 2 +- bootstrap/unix-88/errors.c | 2 +- bootstrap/unix-88/errors.h | 2 +- bootstrap/unix-88/extTools.c | 2 +- bootstrap/unix-88/extTools.h | 2 +- bootstrap/unix-88/vt100.c | 2 +- bootstrap/unix-88/vt100.h | 2 +- bootstrap/windows-48/Configuration.c | 4 +- bootstrap/windows-48/Configuration.h | 2 +- bootstrap/windows-48/Console.c | 2 +- bootstrap/windows-48/Console.h | 2 +- bootstrap/windows-48/Files.c | 2 +- bootstrap/windows-48/Files.h | 2 +- bootstrap/windows-48/Heap.c | 2 +- bootstrap/windows-48/Heap.h | 2 +- bootstrap/windows-48/Modules.c | 2 +- bootstrap/windows-48/Modules.h | 2 +- bootstrap/windows-48/OPB.c | 2 +- bootstrap/windows-48/OPB.h | 2 +- bootstrap/windows-48/OPC.c | 2 +- bootstrap/windows-48/OPC.h | 2 +- bootstrap/windows-48/OPM.c | 2 +- bootstrap/windows-48/OPM.h | 2 +- bootstrap/windows-48/OPP.c | 2 +- bootstrap/windows-48/OPP.h | 2 +- bootstrap/windows-48/OPS.c | 2 +- bootstrap/windows-48/OPS.h | 2 +- bootstrap/windows-48/OPT.c | 16 +- bootstrap/windows-48/OPT.h | 2 +- bootstrap/windows-48/OPV.c | 8 +- bootstrap/windows-48/OPV.h | 2 +- bootstrap/windows-48/Platform.c | 2 +- bootstrap/windows-48/Platform.h | 2 +- bootstrap/windows-48/Reals.c | 2 +- bootstrap/windows-48/Reals.h | 2 +- bootstrap/windows-48/Strings.c | 2 +- bootstrap/windows-48/Strings.h | 2 +- bootstrap/windows-48/Texts.c | 2 +- bootstrap/windows-48/Texts.h | 2 +- bootstrap/windows-48/Vishap.c | 2 +- bootstrap/windows-48/errors.c | 2 +- bootstrap/windows-48/errors.h | 2 +- bootstrap/windows-48/extTools.c | 2 +- bootstrap/windows-48/extTools.h | 2 +- bootstrap/windows-48/vt100.c | 2 +- bootstrap/windows-48/vt100.h | 2 +- bootstrap/windows-88/Configuration.c | 4 +- bootstrap/windows-88/Configuration.h | 2 +- bootstrap/windows-88/Console.c | 2 +- bootstrap/windows-88/Console.h | 2 +- bootstrap/windows-88/Files.c | 2 +- bootstrap/windows-88/Files.h | 2 +- bootstrap/windows-88/Heap.c | 2 +- bootstrap/windows-88/Heap.h | 2 +- bootstrap/windows-88/Modules.c | 2 +- bootstrap/windows-88/Modules.h | 2 +- bootstrap/windows-88/OPB.c | 2 +- bootstrap/windows-88/OPB.h | 2 +- bootstrap/windows-88/OPC.c | 2 +- bootstrap/windows-88/OPC.h | 2 +- bootstrap/windows-88/OPM.c | 2 +- bootstrap/windows-88/OPM.h | 2 +- bootstrap/windows-88/OPP.c | 2 +- bootstrap/windows-88/OPP.h | 2 +- bootstrap/windows-88/OPS.c | 2 +- bootstrap/windows-88/OPS.h | 2 +- bootstrap/windows-88/OPT.c | 16 +- bootstrap/windows-88/OPT.h | 2 +- bootstrap/windows-88/OPV.c | 8 +- bootstrap/windows-88/OPV.h | 2 +- bootstrap/windows-88/Platform.c | 2 +- bootstrap/windows-88/Platform.h | 2 +- bootstrap/windows-88/Reals.c | 2 +- bootstrap/windows-88/Reals.h | 2 +- bootstrap/windows-88/Strings.c | 2 +- bootstrap/windows-88/Strings.h | 2 +- bootstrap/windows-88/Texts.c | 2 +- bootstrap/windows-88/Texts.h | 2 +- bootstrap/windows-88/Vishap.c | 2 +- bootstrap/windows-88/errors.c | 2 +- bootstrap/windows-88/errors.h | 2 +- bootstrap/windows-88/extTools.c | 2 +- bootstrap/windows-88/extTools.h | 2 +- bootstrap/windows-88/vt100.c | 2 +- bootstrap/windows-88/vt100.h | 2 +- src/compiler/OPB.Mod | 112 +++---- src/compiler/OPC.Mod | 12 +- src/compiler/OPM.cmdln.Mod | 46 --- src/compiler/OPP.Mod | 464 +++++++++++++-------------- src/compiler/OPS.Mod | 175 ++++++---- src/compiler/OPT.Mod | 3 +- src/compiler/OPV.Mod | 74 ++--- 202 files changed, 684 insertions(+), 702 deletions(-) diff --git a/bootstrap/unix-44/Configuration.c b/bootstrap/unix-44/Configuration.c index 0719daf0..922a8909 100644 --- a/bootstrap/unix-44/Configuration.c +++ b/bootstrap/unix-44/Configuration.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" @@ -13,6 +13,6 @@ export void *Configuration__init(void) __DEFMOD; __REGMOD("Configuration", 0); /* BEGIN */ - __MOVE("1.95 [2016/08/21] for gcc LP64 on cygwin", Configuration_versionLong, 41); + __MOVE("1.95 [2016/08/22] for gcc LP64 on cygwin", Configuration_versionLong, 41); __ENDMOD; } diff --git a/bootstrap/unix-44/Configuration.h b/bootstrap/unix-44/Configuration.h index c88b42d9..0f37ea7b 100644 --- a/bootstrap/unix-44/Configuration.h +++ b/bootstrap/unix-44/Configuration.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Configuration__h #define Configuration__h diff --git a/bootstrap/unix-44/Console.c b/bootstrap/unix-44/Console.c index 4ac0dbdf..f6d10226 100644 --- a/bootstrap/unix-44/Console.c +++ b/bootstrap/unix-44/Console.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Platform.h" diff --git a/bootstrap/unix-44/Console.h b/bootstrap/unix-44/Console.h index 02922b40..710d1451 100644 --- a/bootstrap/unix-44/Console.h +++ b/bootstrap/unix-44/Console.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Console__h #define Console__h diff --git a/bootstrap/unix-44/Files.c b/bootstrap/unix-44/Files.c index 4cf07aee..f03aafe1 100644 --- a/bootstrap/unix-44/Files.c +++ b/bootstrap/unix-44/Files.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/unix-44/Files.h b/bootstrap/unix-44/Files.h index 3f9cea7d..7fe886a0 100644 --- a/bootstrap/unix-44/Files.h +++ b/bootstrap/unix-44/Files.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef Files__h #define Files__h diff --git a/bootstrap/unix-44/Heap.c b/bootstrap/unix-44/Heap.c index 38736ac9..55f46a85 100644 --- a/bootstrap/unix-44/Heap.c +++ b/bootstrap/unix-44/Heap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #include "SYSTEM.h" struct Heap__1 { diff --git a/bootstrap/unix-44/Heap.h b/bootstrap/unix-44/Heap.h index e1b6dd47..ef7348cf 100644 --- a/bootstrap/unix-44/Heap.h +++ b/bootstrap/unix-44/Heap.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #ifndef Heap__h #define Heap__h diff --git a/bootstrap/unix-44/Modules.c b/bootstrap/unix-44/Modules.c index a834d08d..f69edc96 100644 --- a/bootstrap/unix-44/Modules.c +++ b/bootstrap/unix-44/Modules.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Console.h" #include "Heap.h" diff --git a/bootstrap/unix-44/Modules.h b/bootstrap/unix-44/Modules.h index 5f2fed1e..3c0af484 100644 --- a/bootstrap/unix-44/Modules.h +++ b/bootstrap/unix-44/Modules.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Modules__h #define Modules__h diff --git a/bootstrap/unix-44/OPB.c b/bootstrap/unix-44/OPB.c index f0b6edaf..d16ae3b0 100644 --- a/bootstrap/unix-44/OPB.c +++ b/bootstrap/unix-44/OPB.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPM.h" #include "OPS.h" diff --git a/bootstrap/unix-44/OPB.h b/bootstrap/unix-44/OPB.h index a9e39066..cd52fbdd 100644 --- a/bootstrap/unix-44/OPB.h +++ b/bootstrap/unix-44/OPB.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPB__h #define OPB__h diff --git a/bootstrap/unix-44/OPC.c b/bootstrap/unix-44/OPC.c index 5ff4ff70..b2b9c32a 100644 --- a/bootstrap/unix-44/OPC.c +++ b/bootstrap/unix-44/OPC.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "OPM.h" diff --git a/bootstrap/unix-44/OPC.h b/bootstrap/unix-44/OPC.h index b5ddfc97..6d5f3632 100644 --- a/bootstrap/unix-44/OPC.h +++ b/bootstrap/unix-44/OPC.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPC__h #define OPC__h diff --git a/bootstrap/unix-44/OPM.c b/bootstrap/unix-44/OPM.c index d0279983..dc580662 100644 --- a/bootstrap/unix-44/OPM.c +++ b/bootstrap/unix-44/OPM.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/unix-44/OPM.h b/bootstrap/unix-44/OPM.h index a335fc40..1daa7dac 100644 --- a/bootstrap/unix-44/OPM.h +++ b/bootstrap/unix-44/OPM.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPM__h #define OPM__h diff --git a/bootstrap/unix-44/OPP.c b/bootstrap/unix-44/OPP.c index 76a20bea..447f956e 100644 --- a/bootstrap/unix-44/OPP.c +++ b/bootstrap/unix-44/OPP.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPB.h" #include "OPM.h" diff --git a/bootstrap/unix-44/OPP.h b/bootstrap/unix-44/OPP.h index 50124414..6e6eb0af 100644 --- a/bootstrap/unix-44/OPP.h +++ b/bootstrap/unix-44/OPP.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPP__h #define OPP__h diff --git a/bootstrap/unix-44/OPS.c b/bootstrap/unix-44/OPS.c index bb5a1923..3f1f738f 100644 --- a/bootstrap/unix-44/OPS.c +++ b/bootstrap/unix-44/OPS.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #include "SYSTEM.h" #include "OPM.h" diff --git a/bootstrap/unix-44/OPS.h b/bootstrap/unix-44/OPS.h index a733c4f9..367bfc1b 100644 --- a/bootstrap/unix-44/OPS.h +++ b/bootstrap/unix-44/OPS.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef OPS__h #define OPS__h diff --git a/bootstrap/unix-44/OPT.c b/bootstrap/unix-44/OPT.c index 7b08e8d6..3e2611b8 100644 --- a/bootstrap/unix-44/OPT.c +++ b/bootstrap/unix-44/OPT.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPM.h" #include "OPS.h" @@ -849,7 +849,7 @@ static void OPT_InConstant (LONGINT f, OPT_Const conval) conval->intval = 0; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPT.InConstant(), f = ", (LONGINT)41); + OPM_LogWStr((CHAR*)"unhandled case in InConstant(), f = ", (LONGINT)37); OPM_LogWNum(f, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1072,7 +1072,7 @@ static void OPT_InStruct (OPT_Struct *typ) OPT_InSign(mno, &(*typ)->BaseTyp, &(*typ)->link); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InStruct, tag = ", (LONGINT)39); + OPM_LogWStr((CHAR*)"unhandled case at InStruct, tag = ", (LONGINT)35); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1175,7 +1175,7 @@ static OPT_Object OPT_InObj (SHORTINT mno) } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InObj, tag = ", (LONGINT)36); + OPM_LogWStr((CHAR*)"unhandled case at InObj, tag = ", (LONGINT)32); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1464,14 +1464,14 @@ static void OPT_OutStr (OPT_Struct typ) OPM_SymWInt(((LONGINT)(18))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.comp = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.comp = ", (LONGINT)39); OPM_LogWNum(typ->comp, ((LONGINT)(0))); OPM_LogWLn(); break; } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.form = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.form = ", (LONGINT)39); OPM_LogWNum(typ->form, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1536,7 +1536,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_FPrintErr(obj, 251); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj^.history = ", (LONGINT)46); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj^.history = ", (LONGINT)42); OPM_LogWNum(obj->history, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1592,7 +1592,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_OutName((void*)obj->name, ((LONGINT)(256))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj.mode = ", (LONGINT)42); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj.mode = ", (LONGINT)38); OPM_LogWNum(obj->mode, ((LONGINT)(0))); OPM_LogWLn(); break; diff --git a/bootstrap/unix-44/OPT.h b/bootstrap/unix-44/OPT.h index 399f1b54..3c3bb75b 100644 --- a/bootstrap/unix-44/OPT.h +++ b/bootstrap/unix-44/OPT.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPT__h #define OPT__h diff --git a/bootstrap/unix-44/OPV.c b/bootstrap/unix-44/OPV.c index c501a62b..0545e468 100644 --- a/bootstrap/unix-44/OPV.c +++ b/bootstrap/unix-44/OPV.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPC.h" #include "OPM.h" @@ -333,7 +333,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Nmop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Nmop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -403,7 +403,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Ndop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Ndop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -487,8 +487,6 @@ static void OPV_Convert (OPT_Node n, OPT_Struct newtype, INTEGER prec) OPV_Entier(n, -1); OPM_Write(')'); } else if (__IN(to, 0x70)) { - __ASSERT(newtype->size > 0, 0); - __ASSERT(n->typ->size > 0, 0); if ((newtype->size < n->typ->size && __IN(2, OPM_opt))) { OPM_WriteString((CHAR*)"__SHORT", (LONGINT)8); if (OPV_SideEffects(n)) { diff --git a/bootstrap/unix-44/OPV.h b/bootstrap/unix-44/OPV.h index 86314bd0..c0e4b80e 100644 --- a/bootstrap/unix-44/OPV.h +++ b/bootstrap/unix-44/OPV.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPV__h #define OPV__h diff --git a/bootstrap/unix-44/Platform.c b/bootstrap/unix-44/Platform.c index 0e0574d0..96fa36a1 100644 --- a/bootstrap/unix-44/Platform.c +++ b/bootstrap/unix-44/Platform.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" typedef diff --git a/bootstrap/unix-44/Platform.h b/bootstrap/unix-44/Platform.h index 800e014e..7cd729b9 100644 --- a/bootstrap/unix-44/Platform.h +++ b/bootstrap/unix-44/Platform.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Platform__h #define Platform__h diff --git a/bootstrap/unix-44/Reals.c b/bootstrap/unix-44/Reals.c index 11ec8db0..4e478345 100644 --- a/bootstrap/unix-44/Reals.c +++ b/bootstrap/unix-44/Reals.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" diff --git a/bootstrap/unix-44/Reals.h b/bootstrap/unix-44/Reals.h index f59cf847..fdae5f89 100644 --- a/bootstrap/unix-44/Reals.h +++ b/bootstrap/unix-44/Reals.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Reals__h #define Reals__h diff --git a/bootstrap/unix-44/Strings.c b/bootstrap/unix-44/Strings.c index f327b94d..02755657 100644 --- a/bootstrap/unix-44/Strings.c +++ b/bootstrap/unix-44/Strings.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" diff --git a/bootstrap/unix-44/Strings.h b/bootstrap/unix-44/Strings.h index 178625ae..4245a515 100644 --- a/bootstrap/unix-44/Strings.h +++ b/bootstrap/unix-44/Strings.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Strings__h #define Strings__h diff --git a/bootstrap/unix-44/Texts.c b/bootstrap/unix-44/Texts.c index f8bf9b6c..5dc7c946 100644 --- a/bootstrap/unix-44/Texts.c +++ b/bootstrap/unix-44/Texts.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Files.h" #include "Modules.h" diff --git a/bootstrap/unix-44/Texts.h b/bootstrap/unix-44/Texts.h index 3b33e69e..56de11ac 100644 --- a/bootstrap/unix-44/Texts.h +++ b/bootstrap/unix-44/Texts.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Texts__h #define Texts__h diff --git a/bootstrap/unix-44/Vishap.c b/bootstrap/unix-44/Vishap.c index 7fa5246d..97c8c849 100644 --- a/bootstrap/unix-44/Vishap.c +++ b/bootstrap/unix-44/Vishap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkamSf */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkamSf */ #include "SYSTEM.h" #include "Configuration.h" #include "Heap.h" diff --git a/bootstrap/unix-44/errors.c b/bootstrap/unix-44/errors.c index 595cbc2e..3facbaa9 100644 --- a/bootstrap/unix-44/errors.c +++ b/bootstrap/unix-44/errors.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" typedef diff --git a/bootstrap/unix-44/errors.h b/bootstrap/unix-44/errors.h index b1be0927..719043cb 100644 --- a/bootstrap/unix-44/errors.h +++ b/bootstrap/unix-44/errors.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef errors__h #define errors__h diff --git a/bootstrap/unix-44/extTools.c b/bootstrap/unix-44/extTools.c index 207af008..7785adc7 100644 --- a/bootstrap/unix-44/extTools.c +++ b/bootstrap/unix-44/extTools.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/unix-44/extTools.h b/bootstrap/unix-44/extTools.h index 43a2690a..b189ebeb 100644 --- a/bootstrap/unix-44/extTools.h +++ b/bootstrap/unix-44/extTools.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef extTools__h #define extTools__h diff --git a/bootstrap/unix-44/vt100.c b/bootstrap/unix-44/vt100.c index 88f1a6f5..891d7e43 100644 --- a/bootstrap/unix-44/vt100.c +++ b/bootstrap/unix-44/vt100.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Console.h" #include "Strings.h" diff --git a/bootstrap/unix-44/vt100.h b/bootstrap/unix-44/vt100.h index 8c4a8815..9a9a6144 100644 --- a/bootstrap/unix-44/vt100.h +++ b/bootstrap/unix-44/vt100.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef vt100__h #define vt100__h diff --git a/bootstrap/unix-48/Configuration.c b/bootstrap/unix-48/Configuration.c index 0719daf0..922a8909 100644 --- a/bootstrap/unix-48/Configuration.c +++ b/bootstrap/unix-48/Configuration.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" @@ -13,6 +13,6 @@ export void *Configuration__init(void) __DEFMOD; __REGMOD("Configuration", 0); /* BEGIN */ - __MOVE("1.95 [2016/08/21] for gcc LP64 on cygwin", Configuration_versionLong, 41); + __MOVE("1.95 [2016/08/22] for gcc LP64 on cygwin", Configuration_versionLong, 41); __ENDMOD; } diff --git a/bootstrap/unix-48/Configuration.h b/bootstrap/unix-48/Configuration.h index c88b42d9..0f37ea7b 100644 --- a/bootstrap/unix-48/Configuration.h +++ b/bootstrap/unix-48/Configuration.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Configuration__h #define Configuration__h diff --git a/bootstrap/unix-48/Console.c b/bootstrap/unix-48/Console.c index 4ac0dbdf..f6d10226 100644 --- a/bootstrap/unix-48/Console.c +++ b/bootstrap/unix-48/Console.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Platform.h" diff --git a/bootstrap/unix-48/Console.h b/bootstrap/unix-48/Console.h index 02922b40..710d1451 100644 --- a/bootstrap/unix-48/Console.h +++ b/bootstrap/unix-48/Console.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Console__h #define Console__h diff --git a/bootstrap/unix-48/Files.c b/bootstrap/unix-48/Files.c index 4cf07aee..f03aafe1 100644 --- a/bootstrap/unix-48/Files.c +++ b/bootstrap/unix-48/Files.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/unix-48/Files.h b/bootstrap/unix-48/Files.h index 3f9cea7d..7fe886a0 100644 --- a/bootstrap/unix-48/Files.h +++ b/bootstrap/unix-48/Files.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef Files__h #define Files__h diff --git a/bootstrap/unix-48/Heap.c b/bootstrap/unix-48/Heap.c index 38736ac9..55f46a85 100644 --- a/bootstrap/unix-48/Heap.c +++ b/bootstrap/unix-48/Heap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #include "SYSTEM.h" struct Heap__1 { diff --git a/bootstrap/unix-48/Heap.h b/bootstrap/unix-48/Heap.h index e1b6dd47..ef7348cf 100644 --- a/bootstrap/unix-48/Heap.h +++ b/bootstrap/unix-48/Heap.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #ifndef Heap__h #define Heap__h diff --git a/bootstrap/unix-48/Modules.c b/bootstrap/unix-48/Modules.c index a834d08d..f69edc96 100644 --- a/bootstrap/unix-48/Modules.c +++ b/bootstrap/unix-48/Modules.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Console.h" #include "Heap.h" diff --git a/bootstrap/unix-48/Modules.h b/bootstrap/unix-48/Modules.h index 5f2fed1e..3c0af484 100644 --- a/bootstrap/unix-48/Modules.h +++ b/bootstrap/unix-48/Modules.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Modules__h #define Modules__h diff --git a/bootstrap/unix-48/OPB.c b/bootstrap/unix-48/OPB.c index f0b6edaf..d16ae3b0 100644 --- a/bootstrap/unix-48/OPB.c +++ b/bootstrap/unix-48/OPB.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPM.h" #include "OPS.h" diff --git a/bootstrap/unix-48/OPB.h b/bootstrap/unix-48/OPB.h index a9e39066..cd52fbdd 100644 --- a/bootstrap/unix-48/OPB.h +++ b/bootstrap/unix-48/OPB.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPB__h #define OPB__h diff --git a/bootstrap/unix-48/OPC.c b/bootstrap/unix-48/OPC.c index 5ff4ff70..b2b9c32a 100644 --- a/bootstrap/unix-48/OPC.c +++ b/bootstrap/unix-48/OPC.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "OPM.h" diff --git a/bootstrap/unix-48/OPC.h b/bootstrap/unix-48/OPC.h index b5ddfc97..6d5f3632 100644 --- a/bootstrap/unix-48/OPC.h +++ b/bootstrap/unix-48/OPC.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPC__h #define OPC__h diff --git a/bootstrap/unix-48/OPM.c b/bootstrap/unix-48/OPM.c index d0279983..dc580662 100644 --- a/bootstrap/unix-48/OPM.c +++ b/bootstrap/unix-48/OPM.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/unix-48/OPM.h b/bootstrap/unix-48/OPM.h index a335fc40..1daa7dac 100644 --- a/bootstrap/unix-48/OPM.h +++ b/bootstrap/unix-48/OPM.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPM__h #define OPM__h diff --git a/bootstrap/unix-48/OPP.c b/bootstrap/unix-48/OPP.c index 76a20bea..447f956e 100644 --- a/bootstrap/unix-48/OPP.c +++ b/bootstrap/unix-48/OPP.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPB.h" #include "OPM.h" diff --git a/bootstrap/unix-48/OPP.h b/bootstrap/unix-48/OPP.h index 50124414..6e6eb0af 100644 --- a/bootstrap/unix-48/OPP.h +++ b/bootstrap/unix-48/OPP.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPP__h #define OPP__h diff --git a/bootstrap/unix-48/OPS.c b/bootstrap/unix-48/OPS.c index bb5a1923..3f1f738f 100644 --- a/bootstrap/unix-48/OPS.c +++ b/bootstrap/unix-48/OPS.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #include "SYSTEM.h" #include "OPM.h" diff --git a/bootstrap/unix-48/OPS.h b/bootstrap/unix-48/OPS.h index a733c4f9..367bfc1b 100644 --- a/bootstrap/unix-48/OPS.h +++ b/bootstrap/unix-48/OPS.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef OPS__h #define OPS__h diff --git a/bootstrap/unix-48/OPT.c b/bootstrap/unix-48/OPT.c index 7b08e8d6..3e2611b8 100644 --- a/bootstrap/unix-48/OPT.c +++ b/bootstrap/unix-48/OPT.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPM.h" #include "OPS.h" @@ -849,7 +849,7 @@ static void OPT_InConstant (LONGINT f, OPT_Const conval) conval->intval = 0; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPT.InConstant(), f = ", (LONGINT)41); + OPM_LogWStr((CHAR*)"unhandled case in InConstant(), f = ", (LONGINT)37); OPM_LogWNum(f, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1072,7 +1072,7 @@ static void OPT_InStruct (OPT_Struct *typ) OPT_InSign(mno, &(*typ)->BaseTyp, &(*typ)->link); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InStruct, tag = ", (LONGINT)39); + OPM_LogWStr((CHAR*)"unhandled case at InStruct, tag = ", (LONGINT)35); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1175,7 +1175,7 @@ static OPT_Object OPT_InObj (SHORTINT mno) } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InObj, tag = ", (LONGINT)36); + OPM_LogWStr((CHAR*)"unhandled case at InObj, tag = ", (LONGINT)32); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1464,14 +1464,14 @@ static void OPT_OutStr (OPT_Struct typ) OPM_SymWInt(((LONGINT)(18))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.comp = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.comp = ", (LONGINT)39); OPM_LogWNum(typ->comp, ((LONGINT)(0))); OPM_LogWLn(); break; } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.form = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.form = ", (LONGINT)39); OPM_LogWNum(typ->form, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1536,7 +1536,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_FPrintErr(obj, 251); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj^.history = ", (LONGINT)46); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj^.history = ", (LONGINT)42); OPM_LogWNum(obj->history, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1592,7 +1592,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_OutName((void*)obj->name, ((LONGINT)(256))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj.mode = ", (LONGINT)42); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj.mode = ", (LONGINT)38); OPM_LogWNum(obj->mode, ((LONGINT)(0))); OPM_LogWLn(); break; diff --git a/bootstrap/unix-48/OPT.h b/bootstrap/unix-48/OPT.h index 399f1b54..3c3bb75b 100644 --- a/bootstrap/unix-48/OPT.h +++ b/bootstrap/unix-48/OPT.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPT__h #define OPT__h diff --git a/bootstrap/unix-48/OPV.c b/bootstrap/unix-48/OPV.c index c501a62b..0545e468 100644 --- a/bootstrap/unix-48/OPV.c +++ b/bootstrap/unix-48/OPV.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPC.h" #include "OPM.h" @@ -333,7 +333,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Nmop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Nmop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -403,7 +403,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Ndop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Ndop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -487,8 +487,6 @@ static void OPV_Convert (OPT_Node n, OPT_Struct newtype, INTEGER prec) OPV_Entier(n, -1); OPM_Write(')'); } else if (__IN(to, 0x70)) { - __ASSERT(newtype->size > 0, 0); - __ASSERT(n->typ->size > 0, 0); if ((newtype->size < n->typ->size && __IN(2, OPM_opt))) { OPM_WriteString((CHAR*)"__SHORT", (LONGINT)8); if (OPV_SideEffects(n)) { diff --git a/bootstrap/unix-48/OPV.h b/bootstrap/unix-48/OPV.h index 86314bd0..c0e4b80e 100644 --- a/bootstrap/unix-48/OPV.h +++ b/bootstrap/unix-48/OPV.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPV__h #define OPV__h diff --git a/bootstrap/unix-48/Platform.c b/bootstrap/unix-48/Platform.c index 0e0574d0..96fa36a1 100644 --- a/bootstrap/unix-48/Platform.c +++ b/bootstrap/unix-48/Platform.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" typedef diff --git a/bootstrap/unix-48/Platform.h b/bootstrap/unix-48/Platform.h index 800e014e..7cd729b9 100644 --- a/bootstrap/unix-48/Platform.h +++ b/bootstrap/unix-48/Platform.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Platform__h #define Platform__h diff --git a/bootstrap/unix-48/Reals.c b/bootstrap/unix-48/Reals.c index 11ec8db0..4e478345 100644 --- a/bootstrap/unix-48/Reals.c +++ b/bootstrap/unix-48/Reals.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" diff --git a/bootstrap/unix-48/Reals.h b/bootstrap/unix-48/Reals.h index f59cf847..fdae5f89 100644 --- a/bootstrap/unix-48/Reals.h +++ b/bootstrap/unix-48/Reals.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Reals__h #define Reals__h diff --git a/bootstrap/unix-48/Strings.c b/bootstrap/unix-48/Strings.c index f327b94d..02755657 100644 --- a/bootstrap/unix-48/Strings.c +++ b/bootstrap/unix-48/Strings.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" diff --git a/bootstrap/unix-48/Strings.h b/bootstrap/unix-48/Strings.h index 178625ae..4245a515 100644 --- a/bootstrap/unix-48/Strings.h +++ b/bootstrap/unix-48/Strings.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Strings__h #define Strings__h diff --git a/bootstrap/unix-48/Texts.c b/bootstrap/unix-48/Texts.c index 146b616c..ad722e53 100644 --- a/bootstrap/unix-48/Texts.c +++ b/bootstrap/unix-48/Texts.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Files.h" #include "Modules.h" diff --git a/bootstrap/unix-48/Texts.h b/bootstrap/unix-48/Texts.h index 66ed469b..7214a16b 100644 --- a/bootstrap/unix-48/Texts.h +++ b/bootstrap/unix-48/Texts.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Texts__h #define Texts__h diff --git a/bootstrap/unix-48/Vishap.c b/bootstrap/unix-48/Vishap.c index 7fa5246d..97c8c849 100644 --- a/bootstrap/unix-48/Vishap.c +++ b/bootstrap/unix-48/Vishap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkamSf */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkamSf */ #include "SYSTEM.h" #include "Configuration.h" #include "Heap.h" diff --git a/bootstrap/unix-48/errors.c b/bootstrap/unix-48/errors.c index 595cbc2e..3facbaa9 100644 --- a/bootstrap/unix-48/errors.c +++ b/bootstrap/unix-48/errors.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" typedef diff --git a/bootstrap/unix-48/errors.h b/bootstrap/unix-48/errors.h index b1be0927..719043cb 100644 --- a/bootstrap/unix-48/errors.h +++ b/bootstrap/unix-48/errors.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef errors__h #define errors__h diff --git a/bootstrap/unix-48/extTools.c b/bootstrap/unix-48/extTools.c index 207af008..7785adc7 100644 --- a/bootstrap/unix-48/extTools.c +++ b/bootstrap/unix-48/extTools.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/unix-48/extTools.h b/bootstrap/unix-48/extTools.h index 43a2690a..b189ebeb 100644 --- a/bootstrap/unix-48/extTools.h +++ b/bootstrap/unix-48/extTools.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef extTools__h #define extTools__h diff --git a/bootstrap/unix-48/vt100.c b/bootstrap/unix-48/vt100.c index 88f1a6f5..891d7e43 100644 --- a/bootstrap/unix-48/vt100.c +++ b/bootstrap/unix-48/vt100.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Console.h" #include "Strings.h" diff --git a/bootstrap/unix-48/vt100.h b/bootstrap/unix-48/vt100.h index 8c4a8815..9a9a6144 100644 --- a/bootstrap/unix-48/vt100.h +++ b/bootstrap/unix-48/vt100.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef vt100__h #define vt100__h diff --git a/bootstrap/unix-88/Configuration.c b/bootstrap/unix-88/Configuration.c index 91dc75d4..018926c5 100644 --- a/bootstrap/unix-88/Configuration.c +++ b/bootstrap/unix-88/Configuration.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" @@ -14,6 +14,6 @@ export void *Configuration__init(void) __DEFMOD; __REGMOD("Configuration", 0); /* BEGIN */ - __MOVE("1.95 [2016/08/21] for gcc LP64 on cygwin", Configuration_versionLong, 41); + __MOVE("1.95 [2016/08/22] for gcc LP64 on cygwin", Configuration_versionLong, 41); __ENDMOD; } diff --git a/bootstrap/unix-88/Configuration.h b/bootstrap/unix-88/Configuration.h index 6973a0c1..333cefa8 100644 --- a/bootstrap/unix-88/Configuration.h +++ b/bootstrap/unix-88/Configuration.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Configuration__h #define Configuration__h diff --git a/bootstrap/unix-88/Console.c b/bootstrap/unix-88/Console.c index c05dabb9..5ddcf982 100644 --- a/bootstrap/unix-88/Console.c +++ b/bootstrap/unix-88/Console.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Platform.h" diff --git a/bootstrap/unix-88/Console.h b/bootstrap/unix-88/Console.h index 2cbaea0b..23eb9888 100644 --- a/bootstrap/unix-88/Console.h +++ b/bootstrap/unix-88/Console.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Console__h #define Console__h diff --git a/bootstrap/unix-88/Files.c b/bootstrap/unix-88/Files.c index 69f3f776..5806666c 100644 --- a/bootstrap/unix-88/Files.c +++ b/bootstrap/unix-88/Files.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/unix-88/Files.h b/bootstrap/unix-88/Files.h index 3b2a59d0..208b9f66 100644 --- a/bootstrap/unix-88/Files.h +++ b/bootstrap/unix-88/Files.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef Files__h #define Files__h diff --git a/bootstrap/unix-88/Heap.c b/bootstrap/unix-88/Heap.c index 1c901beb..d51ad5c2 100644 --- a/bootstrap/unix-88/Heap.c +++ b/bootstrap/unix-88/Heap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/unix-88/Heap.h b/bootstrap/unix-88/Heap.h index ef54122d..a3ce3755 100644 --- a/bootstrap/unix-88/Heap.h +++ b/bootstrap/unix-88/Heap.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #ifndef Heap__h #define Heap__h diff --git a/bootstrap/unix-88/Modules.c b/bootstrap/unix-88/Modules.c index c29c2e54..ca308b4d 100644 --- a/bootstrap/unix-88/Modules.c +++ b/bootstrap/unix-88/Modules.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Console.h" diff --git a/bootstrap/unix-88/Modules.h b/bootstrap/unix-88/Modules.h index 181d0424..88670bb0 100644 --- a/bootstrap/unix-88/Modules.h +++ b/bootstrap/unix-88/Modules.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Modules__h #define Modules__h diff --git a/bootstrap/unix-88/OPB.c b/bootstrap/unix-88/OPB.c index ecedb8bd..1fb8ad2b 100644 --- a/bootstrap/unix-88/OPB.c +++ b/bootstrap/unix-88/OPB.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPM.h" diff --git a/bootstrap/unix-88/OPB.h b/bootstrap/unix-88/OPB.h index b921c5dd..de004d95 100644 --- a/bootstrap/unix-88/OPB.h +++ b/bootstrap/unix-88/OPB.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPB__h #define OPB__h diff --git a/bootstrap/unix-88/OPC.c b/bootstrap/unix-88/OPC.c index 882d84ed..aac3cac5 100644 --- a/bootstrap/unix-88/OPC.c +++ b/bootstrap/unix-88/OPC.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/unix-88/OPC.h b/bootstrap/unix-88/OPC.h index 40e26bf3..c9ded67c 100644 --- a/bootstrap/unix-88/OPC.h +++ b/bootstrap/unix-88/OPC.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPC__h #define OPC__h diff --git a/bootstrap/unix-88/OPM.c b/bootstrap/unix-88/OPM.c index 3cf552ce..94b641b5 100644 --- a/bootstrap/unix-88/OPM.c +++ b/bootstrap/unix-88/OPM.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/unix-88/OPM.h b/bootstrap/unix-88/OPM.h index 96e1e2b2..bec0e1f3 100644 --- a/bootstrap/unix-88/OPM.h +++ b/bootstrap/unix-88/OPM.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPM__h #define OPM__h diff --git a/bootstrap/unix-88/OPP.c b/bootstrap/unix-88/OPP.c index fcecc854..113735f2 100644 --- a/bootstrap/unix-88/OPP.c +++ b/bootstrap/unix-88/OPP.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPB.h" diff --git a/bootstrap/unix-88/OPP.h b/bootstrap/unix-88/OPP.h index 76568492..fce96f16 100644 --- a/bootstrap/unix-88/OPP.h +++ b/bootstrap/unix-88/OPP.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPP__h #define OPP__h diff --git a/bootstrap/unix-88/OPS.c b/bootstrap/unix-88/OPS.c index 389d55af..10244289 100644 --- a/bootstrap/unix-88/OPS.c +++ b/bootstrap/unix-88/OPS.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPM.h" diff --git a/bootstrap/unix-88/OPS.h b/bootstrap/unix-88/OPS.h index f8981f03..b0c44127 100644 --- a/bootstrap/unix-88/OPS.h +++ b/bootstrap/unix-88/OPS.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef OPS__h #define OPS__h diff --git a/bootstrap/unix-88/OPT.c b/bootstrap/unix-88/OPT.c index f09315bf..75e51d9d 100644 --- a/bootstrap/unix-88/OPT.c +++ b/bootstrap/unix-88/OPT.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPM.h" @@ -850,7 +850,7 @@ static void OPT_InConstant (LONGINT f, OPT_Const conval) conval->intval = 0; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPT.InConstant(), f = ", (LONGINT)41); + OPM_LogWStr((CHAR*)"unhandled case in InConstant(), f = ", (LONGINT)37); OPM_LogWNum(f, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1073,7 +1073,7 @@ static void OPT_InStruct (OPT_Struct *typ) OPT_InSign(mno, &(*typ)->BaseTyp, &(*typ)->link); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InStruct, tag = ", (LONGINT)39); + OPM_LogWStr((CHAR*)"unhandled case at InStruct, tag = ", (LONGINT)35); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1176,7 +1176,7 @@ static OPT_Object OPT_InObj (SHORTINT mno) } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InObj, tag = ", (LONGINT)36); + OPM_LogWStr((CHAR*)"unhandled case at InObj, tag = ", (LONGINT)32); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1465,14 +1465,14 @@ static void OPT_OutStr (OPT_Struct typ) OPM_SymWInt(((LONGINT)(18))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.comp = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.comp = ", (LONGINT)39); OPM_LogWNum(typ->comp, ((LONGINT)(0))); OPM_LogWLn(); break; } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.form = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.form = ", (LONGINT)39); OPM_LogWNum(typ->form, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1537,7 +1537,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_FPrintErr(obj, 251); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj^.history = ", (LONGINT)46); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj^.history = ", (LONGINT)42); OPM_LogWNum(obj->history, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1593,7 +1593,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_OutName((void*)obj->name, ((LONGINT)(256))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj.mode = ", (LONGINT)42); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj.mode = ", (LONGINT)38); OPM_LogWNum(obj->mode, ((LONGINT)(0))); OPM_LogWLn(); break; diff --git a/bootstrap/unix-88/OPT.h b/bootstrap/unix-88/OPT.h index 7f0e4159..e8667945 100644 --- a/bootstrap/unix-88/OPT.h +++ b/bootstrap/unix-88/OPT.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPT__h #define OPT__h diff --git a/bootstrap/unix-88/OPV.c b/bootstrap/unix-88/OPV.c index 123d1a61..399d7149 100644 --- a/bootstrap/unix-88/OPV.c +++ b/bootstrap/unix-88/OPV.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPC.h" @@ -334,7 +334,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Nmop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Nmop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -404,7 +404,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Ndop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Ndop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -488,8 +488,6 @@ static void OPV_Convert (OPT_Node n, OPT_Struct newtype, INTEGER prec) OPV_Entier(n, -1); OPM_Write(')'); } else if (__IN(to, 0x70)) { - __ASSERT(newtype->size > 0, 0); - __ASSERT(n->typ->size > 0, 0); if ((newtype->size < n->typ->size && __IN(2, OPM_opt))) { OPM_WriteString((CHAR*)"__SHORT", (LONGINT)8); if (OPV_SideEffects(n)) { diff --git a/bootstrap/unix-88/OPV.h b/bootstrap/unix-88/OPV.h index 92f7087d..839f5fbb 100644 --- a/bootstrap/unix-88/OPV.h +++ b/bootstrap/unix-88/OPV.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPV__h #define OPV__h diff --git a/bootstrap/unix-88/Platform.c b/bootstrap/unix-88/Platform.c index 9cb82f63..d1c0a2b2 100644 --- a/bootstrap/unix-88/Platform.c +++ b/bootstrap/unix-88/Platform.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/unix-88/Platform.h b/bootstrap/unix-88/Platform.h index 95db62d1..d4a27fab 100644 --- a/bootstrap/unix-88/Platform.h +++ b/bootstrap/unix-88/Platform.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Platform__h #define Platform__h diff --git a/bootstrap/unix-88/Reals.c b/bootstrap/unix-88/Reals.c index 560e16bf..b88dd1e1 100644 --- a/bootstrap/unix-88/Reals.c +++ b/bootstrap/unix-88/Reals.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/unix-88/Reals.h b/bootstrap/unix-88/Reals.h index ae552097..dc1a2544 100644 --- a/bootstrap/unix-88/Reals.h +++ b/bootstrap/unix-88/Reals.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Reals__h #define Reals__h diff --git a/bootstrap/unix-88/Strings.c b/bootstrap/unix-88/Strings.c index c2c341b0..839b8b93 100644 --- a/bootstrap/unix-88/Strings.c +++ b/bootstrap/unix-88/Strings.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/unix-88/Strings.h b/bootstrap/unix-88/Strings.h index bfe312c0..0f4e30dd 100644 --- a/bootstrap/unix-88/Strings.h +++ b/bootstrap/unix-88/Strings.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Strings__h #define Strings__h diff --git a/bootstrap/unix-88/Texts.c b/bootstrap/unix-88/Texts.c index 2b941f46..d958df95 100644 --- a/bootstrap/unix-88/Texts.c +++ b/bootstrap/unix-88/Texts.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Files.h" diff --git a/bootstrap/unix-88/Texts.h b/bootstrap/unix-88/Texts.h index 402a45b4..e4314cfb 100644 --- a/bootstrap/unix-88/Texts.h +++ b/bootstrap/unix-88/Texts.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Texts__h #define Texts__h diff --git a/bootstrap/unix-88/Vishap.c b/bootstrap/unix-88/Vishap.c index 377aa70c..ba77bb85 100644 --- a/bootstrap/unix-88/Vishap.c +++ b/bootstrap/unix-88/Vishap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkamSf */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkamSf */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/unix-88/errors.c b/bootstrap/unix-88/errors.c index 01c4cec3..2ab076d8 100644 --- a/bootstrap/unix-88/errors.c +++ b/bootstrap/unix-88/errors.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/unix-88/errors.h b/bootstrap/unix-88/errors.h index 879ebb6b..2ebe7512 100644 --- a/bootstrap/unix-88/errors.h +++ b/bootstrap/unix-88/errors.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef errors__h #define errors__h diff --git a/bootstrap/unix-88/extTools.c b/bootstrap/unix-88/extTools.c index cd8571d6..2c26582b 100644 --- a/bootstrap/unix-88/extTools.c +++ b/bootstrap/unix-88/extTools.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/unix-88/extTools.h b/bootstrap/unix-88/extTools.h index 1a9020bd..e844a8a5 100644 --- a/bootstrap/unix-88/extTools.h +++ b/bootstrap/unix-88/extTools.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef extTools__h #define extTools__h diff --git a/bootstrap/unix-88/vt100.c b/bootstrap/unix-88/vt100.c index 8b88e190..056577f3 100644 --- a/bootstrap/unix-88/vt100.c +++ b/bootstrap/unix-88/vt100.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Console.h" diff --git a/bootstrap/unix-88/vt100.h b/bootstrap/unix-88/vt100.h index 368af3a0..783646f9 100644 --- a/bootstrap/unix-88/vt100.h +++ b/bootstrap/unix-88/vt100.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef vt100__h #define vt100__h diff --git a/bootstrap/windows-48/Configuration.c b/bootstrap/windows-48/Configuration.c index 0719daf0..922a8909 100644 --- a/bootstrap/windows-48/Configuration.c +++ b/bootstrap/windows-48/Configuration.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" @@ -13,6 +13,6 @@ export void *Configuration__init(void) __DEFMOD; __REGMOD("Configuration", 0); /* BEGIN */ - __MOVE("1.95 [2016/08/21] for gcc LP64 on cygwin", Configuration_versionLong, 41); + __MOVE("1.95 [2016/08/22] for gcc LP64 on cygwin", Configuration_versionLong, 41); __ENDMOD; } diff --git a/bootstrap/windows-48/Configuration.h b/bootstrap/windows-48/Configuration.h index c88b42d9..0f37ea7b 100644 --- a/bootstrap/windows-48/Configuration.h +++ b/bootstrap/windows-48/Configuration.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Configuration__h #define Configuration__h diff --git a/bootstrap/windows-48/Console.c b/bootstrap/windows-48/Console.c index d409b0c9..4c351b99 100644 --- a/bootstrap/windows-48/Console.c +++ b/bootstrap/windows-48/Console.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Platform.h" diff --git a/bootstrap/windows-48/Console.h b/bootstrap/windows-48/Console.h index 02922b40..710d1451 100644 --- a/bootstrap/windows-48/Console.h +++ b/bootstrap/windows-48/Console.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Console__h #define Console__h diff --git a/bootstrap/windows-48/Files.c b/bootstrap/windows-48/Files.c index 15b6bfe7..4d299348 100644 --- a/bootstrap/windows-48/Files.c +++ b/bootstrap/windows-48/Files.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/windows-48/Files.h b/bootstrap/windows-48/Files.h index 7c21fe50..ecab7ec5 100644 --- a/bootstrap/windows-48/Files.h +++ b/bootstrap/windows-48/Files.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef Files__h #define Files__h diff --git a/bootstrap/windows-48/Heap.c b/bootstrap/windows-48/Heap.c index 38736ac9..55f46a85 100644 --- a/bootstrap/windows-48/Heap.c +++ b/bootstrap/windows-48/Heap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #include "SYSTEM.h" struct Heap__1 { diff --git a/bootstrap/windows-48/Heap.h b/bootstrap/windows-48/Heap.h index e1b6dd47..ef7348cf 100644 --- a/bootstrap/windows-48/Heap.h +++ b/bootstrap/windows-48/Heap.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #ifndef Heap__h #define Heap__h diff --git a/bootstrap/windows-48/Modules.c b/bootstrap/windows-48/Modules.c index a834d08d..f69edc96 100644 --- a/bootstrap/windows-48/Modules.c +++ b/bootstrap/windows-48/Modules.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Console.h" #include "Heap.h" diff --git a/bootstrap/windows-48/Modules.h b/bootstrap/windows-48/Modules.h index 5f2fed1e..3c0af484 100644 --- a/bootstrap/windows-48/Modules.h +++ b/bootstrap/windows-48/Modules.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Modules__h #define Modules__h diff --git a/bootstrap/windows-48/OPB.c b/bootstrap/windows-48/OPB.c index f0b6edaf..d16ae3b0 100644 --- a/bootstrap/windows-48/OPB.c +++ b/bootstrap/windows-48/OPB.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPM.h" #include "OPS.h" diff --git a/bootstrap/windows-48/OPB.h b/bootstrap/windows-48/OPB.h index a9e39066..cd52fbdd 100644 --- a/bootstrap/windows-48/OPB.h +++ b/bootstrap/windows-48/OPB.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPB__h #define OPB__h diff --git a/bootstrap/windows-48/OPC.c b/bootstrap/windows-48/OPC.c index 5ff4ff70..b2b9c32a 100644 --- a/bootstrap/windows-48/OPC.c +++ b/bootstrap/windows-48/OPC.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "OPM.h" diff --git a/bootstrap/windows-48/OPC.h b/bootstrap/windows-48/OPC.h index b5ddfc97..6d5f3632 100644 --- a/bootstrap/windows-48/OPC.h +++ b/bootstrap/windows-48/OPC.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPC__h #define OPC__h diff --git a/bootstrap/windows-48/OPM.c b/bootstrap/windows-48/OPM.c index d0279983..dc580662 100644 --- a/bootstrap/windows-48/OPM.c +++ b/bootstrap/windows-48/OPM.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/windows-48/OPM.h b/bootstrap/windows-48/OPM.h index a335fc40..1daa7dac 100644 --- a/bootstrap/windows-48/OPM.h +++ b/bootstrap/windows-48/OPM.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPM__h #define OPM__h diff --git a/bootstrap/windows-48/OPP.c b/bootstrap/windows-48/OPP.c index 76a20bea..447f956e 100644 --- a/bootstrap/windows-48/OPP.c +++ b/bootstrap/windows-48/OPP.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPB.h" #include "OPM.h" diff --git a/bootstrap/windows-48/OPP.h b/bootstrap/windows-48/OPP.h index 50124414..6e6eb0af 100644 --- a/bootstrap/windows-48/OPP.h +++ b/bootstrap/windows-48/OPP.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPP__h #define OPP__h diff --git a/bootstrap/windows-48/OPS.c b/bootstrap/windows-48/OPS.c index bb5a1923..3f1f738f 100644 --- a/bootstrap/windows-48/OPS.c +++ b/bootstrap/windows-48/OPS.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #include "SYSTEM.h" #include "OPM.h" diff --git a/bootstrap/windows-48/OPS.h b/bootstrap/windows-48/OPS.h index a733c4f9..367bfc1b 100644 --- a/bootstrap/windows-48/OPS.h +++ b/bootstrap/windows-48/OPS.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef OPS__h #define OPS__h diff --git a/bootstrap/windows-48/OPT.c b/bootstrap/windows-48/OPT.c index 7b08e8d6..3e2611b8 100644 --- a/bootstrap/windows-48/OPT.c +++ b/bootstrap/windows-48/OPT.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPM.h" #include "OPS.h" @@ -849,7 +849,7 @@ static void OPT_InConstant (LONGINT f, OPT_Const conval) conval->intval = 0; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPT.InConstant(), f = ", (LONGINT)41); + OPM_LogWStr((CHAR*)"unhandled case in InConstant(), f = ", (LONGINT)37); OPM_LogWNum(f, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1072,7 +1072,7 @@ static void OPT_InStruct (OPT_Struct *typ) OPT_InSign(mno, &(*typ)->BaseTyp, &(*typ)->link); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InStruct, tag = ", (LONGINT)39); + OPM_LogWStr((CHAR*)"unhandled case at InStruct, tag = ", (LONGINT)35); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1175,7 +1175,7 @@ static OPT_Object OPT_InObj (SHORTINT mno) } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InObj, tag = ", (LONGINT)36); + OPM_LogWStr((CHAR*)"unhandled case at InObj, tag = ", (LONGINT)32); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1464,14 +1464,14 @@ static void OPT_OutStr (OPT_Struct typ) OPM_SymWInt(((LONGINT)(18))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.comp = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.comp = ", (LONGINT)39); OPM_LogWNum(typ->comp, ((LONGINT)(0))); OPM_LogWLn(); break; } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.form = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.form = ", (LONGINT)39); OPM_LogWNum(typ->form, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1536,7 +1536,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_FPrintErr(obj, 251); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj^.history = ", (LONGINT)46); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj^.history = ", (LONGINT)42); OPM_LogWNum(obj->history, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1592,7 +1592,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_OutName((void*)obj->name, ((LONGINT)(256))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj.mode = ", (LONGINT)42); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj.mode = ", (LONGINT)38); OPM_LogWNum(obj->mode, ((LONGINT)(0))); OPM_LogWLn(); break; diff --git a/bootstrap/windows-48/OPT.h b/bootstrap/windows-48/OPT.h index 399f1b54..3c3bb75b 100644 --- a/bootstrap/windows-48/OPT.h +++ b/bootstrap/windows-48/OPT.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPT__h #define OPT__h diff --git a/bootstrap/windows-48/OPV.c b/bootstrap/windows-48/OPV.c index c501a62b..0545e468 100644 --- a/bootstrap/windows-48/OPV.c +++ b/bootstrap/windows-48/OPV.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "OPC.h" #include "OPM.h" @@ -333,7 +333,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Nmop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Nmop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -403,7 +403,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Ndop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Ndop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -487,8 +487,6 @@ static void OPV_Convert (OPT_Node n, OPT_Struct newtype, INTEGER prec) OPV_Entier(n, -1); OPM_Write(')'); } else if (__IN(to, 0x70)) { - __ASSERT(newtype->size > 0, 0); - __ASSERT(n->typ->size > 0, 0); if ((newtype->size < n->typ->size && __IN(2, OPM_opt))) { OPM_WriteString((CHAR*)"__SHORT", (LONGINT)8); if (OPV_SideEffects(n)) { diff --git a/bootstrap/windows-48/OPV.h b/bootstrap/windows-48/OPV.h index 86314bd0..c0e4b80e 100644 --- a/bootstrap/windows-48/OPV.h +++ b/bootstrap/windows-48/OPV.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPV__h #define OPV__h diff --git a/bootstrap/windows-48/Platform.c b/bootstrap/windows-48/Platform.c index 1b402380..21a2c472 100644 --- a/bootstrap/windows-48/Platform.c +++ b/bootstrap/windows-48/Platform.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" typedef diff --git a/bootstrap/windows-48/Platform.h b/bootstrap/windows-48/Platform.h index 9352c3d3..dece75aa 100644 --- a/bootstrap/windows-48/Platform.h +++ b/bootstrap/windows-48/Platform.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Platform__h #define Platform__h diff --git a/bootstrap/windows-48/Reals.c b/bootstrap/windows-48/Reals.c index 11ec8db0..4e478345 100644 --- a/bootstrap/windows-48/Reals.c +++ b/bootstrap/windows-48/Reals.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" diff --git a/bootstrap/windows-48/Reals.h b/bootstrap/windows-48/Reals.h index f59cf847..fdae5f89 100644 --- a/bootstrap/windows-48/Reals.h +++ b/bootstrap/windows-48/Reals.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Reals__h #define Reals__h diff --git a/bootstrap/windows-48/Strings.c b/bootstrap/windows-48/Strings.c index f327b94d..02755657 100644 --- a/bootstrap/windows-48/Strings.c +++ b/bootstrap/windows-48/Strings.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" diff --git a/bootstrap/windows-48/Strings.h b/bootstrap/windows-48/Strings.h index 178625ae..4245a515 100644 --- a/bootstrap/windows-48/Strings.h +++ b/bootstrap/windows-48/Strings.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Strings__h #define Strings__h diff --git a/bootstrap/windows-48/Texts.c b/bootstrap/windows-48/Texts.c index 146b616c..ad722e53 100644 --- a/bootstrap/windows-48/Texts.c +++ b/bootstrap/windows-48/Texts.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Files.h" #include "Modules.h" diff --git a/bootstrap/windows-48/Texts.h b/bootstrap/windows-48/Texts.h index 66ed469b..7214a16b 100644 --- a/bootstrap/windows-48/Texts.h +++ b/bootstrap/windows-48/Texts.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Texts__h #define Texts__h diff --git a/bootstrap/windows-48/Vishap.c b/bootstrap/windows-48/Vishap.c index 7fa5246d..97c8c849 100644 --- a/bootstrap/windows-48/Vishap.c +++ b/bootstrap/windows-48/Vishap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkamSf */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkamSf */ #include "SYSTEM.h" #include "Configuration.h" #include "Heap.h" diff --git a/bootstrap/windows-48/errors.c b/bootstrap/windows-48/errors.c index 595cbc2e..3facbaa9 100644 --- a/bootstrap/windows-48/errors.c +++ b/bootstrap/windows-48/errors.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" typedef diff --git a/bootstrap/windows-48/errors.h b/bootstrap/windows-48/errors.h index b1be0927..719043cb 100644 --- a/bootstrap/windows-48/errors.h +++ b/bootstrap/windows-48/errors.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef errors__h #define errors__h diff --git a/bootstrap/windows-48/extTools.c b/bootstrap/windows-48/extTools.c index 207af008..7785adc7 100644 --- a/bootstrap/windows-48/extTools.c +++ b/bootstrap/windows-48/extTools.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Configuration.h" #include "Console.h" diff --git a/bootstrap/windows-48/extTools.h b/bootstrap/windows-48/extTools.h index 43a2690a..b189ebeb 100644 --- a/bootstrap/windows-48/extTools.h +++ b/bootstrap/windows-48/extTools.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef extTools__h #define extTools__h diff --git a/bootstrap/windows-48/vt100.c b/bootstrap/windows-48/vt100.c index 88f1a6f5..891d7e43 100644 --- a/bootstrap/windows-48/vt100.c +++ b/bootstrap/windows-48/vt100.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #include "SYSTEM.h" #include "Console.h" #include "Strings.h" diff --git a/bootstrap/windows-48/vt100.h b/bootstrap/windows-48/vt100.h index 8c4a8815..9a9a6144 100644 --- a/bootstrap/windows-48/vt100.h +++ b/bootstrap/windows-48/vt100.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef vt100__h #define vt100__h diff --git a/bootstrap/windows-88/Configuration.c b/bootstrap/windows-88/Configuration.c index 91dc75d4..018926c5 100644 --- a/bootstrap/windows-88/Configuration.c +++ b/bootstrap/windows-88/Configuration.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" @@ -14,6 +14,6 @@ export void *Configuration__init(void) __DEFMOD; __REGMOD("Configuration", 0); /* BEGIN */ - __MOVE("1.95 [2016/08/21] for gcc LP64 on cygwin", Configuration_versionLong, 41); + __MOVE("1.95 [2016/08/22] for gcc LP64 on cygwin", Configuration_versionLong, 41); __ENDMOD; } diff --git a/bootstrap/windows-88/Configuration.h b/bootstrap/windows-88/Configuration.h index 6973a0c1..333cefa8 100644 --- a/bootstrap/windows-88/Configuration.h +++ b/bootstrap/windows-88/Configuration.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Configuration__h #define Configuration__h diff --git a/bootstrap/windows-88/Console.c b/bootstrap/windows-88/Console.c index 4538d7cc..a5636056 100644 --- a/bootstrap/windows-88/Console.c +++ b/bootstrap/windows-88/Console.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Platform.h" diff --git a/bootstrap/windows-88/Console.h b/bootstrap/windows-88/Console.h index 2cbaea0b..23eb9888 100644 --- a/bootstrap/windows-88/Console.h +++ b/bootstrap/windows-88/Console.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Console__h #define Console__h diff --git a/bootstrap/windows-88/Files.c b/bootstrap/windows-88/Files.c index cac14c87..0dc5def3 100644 --- a/bootstrap/windows-88/Files.c +++ b/bootstrap/windows-88/Files.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/windows-88/Files.h b/bootstrap/windows-88/Files.h index 9319a396..3777880a 100644 --- a/bootstrap/windows-88/Files.h +++ b/bootstrap/windows-88/Files.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef Files__h #define Files__h diff --git a/bootstrap/windows-88/Heap.c b/bootstrap/windows-88/Heap.c index 1c901beb..d51ad5c2 100644 --- a/bootstrap/windows-88/Heap.c +++ b/bootstrap/windows-88/Heap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/windows-88/Heap.h b/bootstrap/windows-88/Heap.h index ef54122d..a3ce3755 100644 --- a/bootstrap/windows-88/Heap.h +++ b/bootstrap/windows-88/Heap.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tskSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tskSfF */ #ifndef Heap__h #define Heap__h diff --git a/bootstrap/windows-88/Modules.c b/bootstrap/windows-88/Modules.c index c29c2e54..ca308b4d 100644 --- a/bootstrap/windows-88/Modules.c +++ b/bootstrap/windows-88/Modules.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Console.h" diff --git a/bootstrap/windows-88/Modules.h b/bootstrap/windows-88/Modules.h index 181d0424..88670bb0 100644 --- a/bootstrap/windows-88/Modules.h +++ b/bootstrap/windows-88/Modules.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Modules__h #define Modules__h diff --git a/bootstrap/windows-88/OPB.c b/bootstrap/windows-88/OPB.c index ecedb8bd..1fb8ad2b 100644 --- a/bootstrap/windows-88/OPB.c +++ b/bootstrap/windows-88/OPB.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPM.h" diff --git a/bootstrap/windows-88/OPB.h b/bootstrap/windows-88/OPB.h index b921c5dd..de004d95 100644 --- a/bootstrap/windows-88/OPB.h +++ b/bootstrap/windows-88/OPB.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPB__h #define OPB__h diff --git a/bootstrap/windows-88/OPC.c b/bootstrap/windows-88/OPC.c index 882d84ed..aac3cac5 100644 --- a/bootstrap/windows-88/OPC.c +++ b/bootstrap/windows-88/OPC.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/windows-88/OPC.h b/bootstrap/windows-88/OPC.h index 40e26bf3..c9ded67c 100644 --- a/bootstrap/windows-88/OPC.h +++ b/bootstrap/windows-88/OPC.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPC__h #define OPC__h diff --git a/bootstrap/windows-88/OPM.c b/bootstrap/windows-88/OPM.c index 3cf552ce..94b641b5 100644 --- a/bootstrap/windows-88/OPM.c +++ b/bootstrap/windows-88/OPM.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/windows-88/OPM.h b/bootstrap/windows-88/OPM.h index 96e1e2b2..bec0e1f3 100644 --- a/bootstrap/windows-88/OPM.h +++ b/bootstrap/windows-88/OPM.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPM__h #define OPM__h diff --git a/bootstrap/windows-88/OPP.c b/bootstrap/windows-88/OPP.c index fcecc854..113735f2 100644 --- a/bootstrap/windows-88/OPP.c +++ b/bootstrap/windows-88/OPP.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPB.h" diff --git a/bootstrap/windows-88/OPP.h b/bootstrap/windows-88/OPP.h index 76568492..fce96f16 100644 --- a/bootstrap/windows-88/OPP.h +++ b/bootstrap/windows-88/OPP.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPP__h #define OPP__h diff --git a/bootstrap/windows-88/OPS.c b/bootstrap/windows-88/OPS.c index 389d55af..10244289 100644 --- a/bootstrap/windows-88/OPS.c +++ b/bootstrap/windows-88/OPS.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPM.h" diff --git a/bootstrap/windows-88/OPS.h b/bootstrap/windows-88/OPS.h index f8981f03..b0c44127 100644 --- a/bootstrap/windows-88/OPS.h +++ b/bootstrap/windows-88/OPS.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin tspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin tspkaSfF */ #ifndef OPS__h #define OPS__h diff --git a/bootstrap/windows-88/OPT.c b/bootstrap/windows-88/OPT.c index f09315bf..75e51d9d 100644 --- a/bootstrap/windows-88/OPT.c +++ b/bootstrap/windows-88/OPT.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPM.h" @@ -850,7 +850,7 @@ static void OPT_InConstant (LONGINT f, OPT_Const conval) conval->intval = 0; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPT.InConstant(), f = ", (LONGINT)41); + OPM_LogWStr((CHAR*)"unhandled case in InConstant(), f = ", (LONGINT)37); OPM_LogWNum(f, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1073,7 +1073,7 @@ static void OPT_InStruct (OPT_Struct *typ) OPT_InSign(mno, &(*typ)->BaseTyp, &(*typ)->link); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InStruct, tag = ", (LONGINT)39); + OPM_LogWStr((CHAR*)"unhandled case at InStruct, tag = ", (LONGINT)35); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1176,7 +1176,7 @@ static OPT_Object OPT_InObj (SHORTINT mno) } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.InObj, tag = ", (LONGINT)36); + OPM_LogWStr((CHAR*)"unhandled case at InObj, tag = ", (LONGINT)32); OPM_LogWNum(tag, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1465,14 +1465,14 @@ static void OPT_OutStr (OPT_Struct typ) OPM_SymWInt(((LONGINT)(18))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.comp = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.comp = ", (LONGINT)39); OPM_LogWNum(typ->comp, ((LONGINT)(0))); OPM_LogWLn(); break; } break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutStr, typ^.form = ", (LONGINT)43); + OPM_LogWStr((CHAR*)"unhandled case at OutStr, typ^.form = ", (LONGINT)39); OPM_LogWNum(typ->form, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1537,7 +1537,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_FPrintErr(obj, 251); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj^.history = ", (LONGINT)46); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj^.history = ", (LONGINT)42); OPM_LogWNum(obj->history, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -1593,7 +1593,7 @@ static void OPT_OutObj (OPT_Object obj) OPT_OutName((void*)obj->name, ((LONGINT)(256))); break; default: - OPM_LogWStr((CHAR*)"unhandled case at OPT.OutObj, obj.mode = ", (LONGINT)42); + OPM_LogWStr((CHAR*)"unhandled case at OutObj, obj.mode = ", (LONGINT)38); OPM_LogWNum(obj->mode, ((LONGINT)(0))); OPM_LogWLn(); break; diff --git a/bootstrap/windows-88/OPT.h b/bootstrap/windows-88/OPT.h index 7f0e4159..e8667945 100644 --- a/bootstrap/windows-88/OPT.h +++ b/bootstrap/windows-88/OPT.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPT__h #define OPT__h diff --git a/bootstrap/windows-88/OPV.c b/bootstrap/windows-88/OPV.c index 123d1a61..399d7149 100644 --- a/bootstrap/windows-88/OPV.c +++ b/bootstrap/windows-88/OPV.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "OPC.h" @@ -334,7 +334,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Nmop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Nmop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -404,7 +404,7 @@ static INTEGER OPV_Precedence (INTEGER class, INTEGER subclass, INTEGER form, IN return _o_result; break; default: - OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPM.Ndop, subclass = ", (LONGINT)55); + OPM_LogWStr((CHAR*)"unhandled case in OPV.Precedence OPT.Ndop, subclass = ", (LONGINT)55); OPM_LogWNum(subclass, ((LONGINT)(0))); OPM_LogWLn(); break; @@ -488,8 +488,6 @@ static void OPV_Convert (OPT_Node n, OPT_Struct newtype, INTEGER prec) OPV_Entier(n, -1); OPM_Write(')'); } else if (__IN(to, 0x70)) { - __ASSERT(newtype->size > 0, 0); - __ASSERT(n->typ->size > 0, 0); if ((newtype->size < n->typ->size && __IN(2, OPM_opt))) { OPM_WriteString((CHAR*)"__SHORT", (LONGINT)8); if (OPV_SideEffects(n)) { diff --git a/bootstrap/windows-88/OPV.h b/bootstrap/windows-88/OPV.h index 92f7087d..839f5fbb 100644 --- a/bootstrap/windows-88/OPV.h +++ b/bootstrap/windows-88/OPV.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef OPV__h #define OPV__h diff --git a/bootstrap/windows-88/Platform.c b/bootstrap/windows-88/Platform.c index 042e2829..9d0decbc 100644 --- a/bootstrap/windows-88/Platform.c +++ b/bootstrap/windows-88/Platform.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/windows-88/Platform.h b/bootstrap/windows-88/Platform.h index 4a85170e..cf905cb2 100644 --- a/bootstrap/windows-88/Platform.h +++ b/bootstrap/windows-88/Platform.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Platform__h #define Platform__h diff --git a/bootstrap/windows-88/Reals.c b/bootstrap/windows-88/Reals.c index 560e16bf..b88dd1e1 100644 --- a/bootstrap/windows-88/Reals.c +++ b/bootstrap/windows-88/Reals.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/windows-88/Reals.h b/bootstrap/windows-88/Reals.h index ae552097..dc1a2544 100644 --- a/bootstrap/windows-88/Reals.h +++ b/bootstrap/windows-88/Reals.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Reals__h #define Reals__h diff --git a/bootstrap/windows-88/Strings.c b/bootstrap/windows-88/Strings.c index c2c341b0..839b8b93 100644 --- a/bootstrap/windows-88/Strings.c +++ b/bootstrap/windows-88/Strings.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/windows-88/Strings.h b/bootstrap/windows-88/Strings.h index bfe312c0..0f4e30dd 100644 --- a/bootstrap/windows-88/Strings.h +++ b/bootstrap/windows-88/Strings.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Strings__h #define Strings__h diff --git a/bootstrap/windows-88/Texts.c b/bootstrap/windows-88/Texts.c index 2b941f46..d958df95 100644 --- a/bootstrap/windows-88/Texts.c +++ b/bootstrap/windows-88/Texts.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Files.h" diff --git a/bootstrap/windows-88/Texts.h b/bootstrap/windows-88/Texts.h index 402a45b4..e4314cfb 100644 --- a/bootstrap/windows-88/Texts.h +++ b/bootstrap/windows-88/Texts.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef Texts__h #define Texts__h diff --git a/bootstrap/windows-88/Vishap.c b/bootstrap/windows-88/Vishap.c index 377aa70c..ba77bb85 100644 --- a/bootstrap/windows-88/Vishap.c +++ b/bootstrap/windows-88/Vishap.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkamSf */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkamSf */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/windows-88/errors.c b/bootstrap/windows-88/errors.c index 01c4cec3..2ab076d8 100644 --- a/bootstrap/windows-88/errors.c +++ b/bootstrap/windows-88/errors.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" diff --git a/bootstrap/windows-88/errors.h b/bootstrap/windows-88/errors.h index 879ebb6b..2ebe7512 100644 --- a/bootstrap/windows-88/errors.h +++ b/bootstrap/windows-88/errors.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef errors__h #define errors__h diff --git a/bootstrap/windows-88/extTools.c b/bootstrap/windows-88/extTools.c index cd8571d6..2c26582b 100644 --- a/bootstrap/windows-88/extTools.c +++ b/bootstrap/windows-88/extTools.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Configuration.h" diff --git a/bootstrap/windows-88/extTools.h b/bootstrap/windows-88/extTools.h index 1a9020bd..e844a8a5 100644 --- a/bootstrap/windows-88/extTools.h +++ b/bootstrap/windows-88/extTools.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef extTools__h #define extTools__h diff --git a/bootstrap/windows-88/vt100.c b/bootstrap/windows-88/vt100.c index 8b88e190..056577f3 100644 --- a/bootstrap/windows-88/vt100.c +++ b/bootstrap/windows-88/vt100.c @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #define LARGE #include "SYSTEM.h" #include "Console.h" diff --git a/bootstrap/windows-88/vt100.h b/bootstrap/windows-88/vt100.h index 368af3a0..783646f9 100644 --- a/bootstrap/windows-88/vt100.h +++ b/bootstrap/windows-88/vt100.h @@ -1,4 +1,4 @@ -/* voc 1.95 [2016/08/21] for gcc LP64 on cygwin xtspkaSfF */ +/* voc 1.95 [2016/08/22] for gcc LP64 on cygwin xtspkaSfF */ #ifndef vt100__h #define vt100__h diff --git a/src/compiler/OPB.Mod b/src/compiler/OPB.Mod index 603952c4..6da12c5e 100644 --- a/src/compiler/OPB.Mod +++ b/src/compiler/OPB.Mod @@ -236,7 +236,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) WHILE (t1 # NIL) & (t1 # t0) & (t1 # OPT.undftyp) DO t1 := t1^.BaseTyp END ; IF (t1 = t0) OR (t0.form = OPT.Undef (*SYSTEM.PTR*)) THEN IF guard THEN BindNodes(OPT.Nguard, NIL, x, NIL); x^.readonly := x^.left^.readonly - ELSE node := OPT.NewNode(OPT.Nmop); node^.subcl := OPM.is; node^.left := x; + ELSE node := OPT.NewNode(OPT.Nmop); node^.subcl := OPS.is; node^.left := x; node^.obj := obj; x := node END ELSE err(85) @@ -244,7 +244,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) ELSIF t0 # t1 THEN err(85) (* prevent down guard *) ELSIF ~guard THEN IF x^.class = OPT.Nguard THEN (* cannot skip guard *) - node := OPT.NewNode(OPT.Nmop); node^.subcl := OPM.is; node^.left := x; + node := OPT.NewNode(OPT.Nmop); node^.subcl := OPS.is; node^.left := x; node^.obj := obj; x := node ELSE x := NewBoolConst(TRUE) END @@ -274,9 +274,9 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) k := x^.conval^.intval; IF (k < 0) OR (k > OPM.MaxSet) THEN err(202) ELSIF y^.class = OPT.Nconst THEN x^.conval^.intval := BoolToInt(k IN y^.conval^.setval); x^.obj := NIL - ELSE BindNodes(OPT.Ndop, OPT.booltyp, x, y); x^.subcl := OPM.in + ELSE BindNodes(OPT.Ndop, OPT.booltyp, x, y); x^.subcl := OPS.in END - ELSE BindNodes(OPT.Ndop, OPT.booltyp, x, y); x^.subcl := OPM.in + ELSE BindNodes(OPT.Ndop, OPT.booltyp, x, y); x^.subcl := OPS.in END ELSE err(92) END ; @@ -319,15 +319,15 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) IF (z^.class = OPT.Ntype) OR (z^.class = OPT.Nproc) THEN err(126) ELSE typ := z^.typ; f := typ^.form; CASE op OF - |OPM.not: IF f = OPT.Bool THEN + |OPS.not: IF f = OPT.Bool THEN IF z^.class = OPT.Nconst THEN z^.conval^.intval := BoolToInt(~IntToBool(z^.conval^.intval)); z^.obj := NIL ELSE z := NewOp(op, typ, z) END ELSE err(98) END - |OPM.plus: IF ~(f IN OPT.intSet + OPT.realSet) THEN err(96) END - |OPM.minus: IF f IN OPT.intSet + OPT.realSet +{OPT.Set}THEN + |OPS.plus: IF ~(f IN OPT.intSet + OPT.realSet) THEN err(96) END + |OPS.minus: IF f IN OPT.intSet + OPT.realSet +{OPT.Set}THEN IF z^.class = OPT.Nconst THEN IF f IN OPT.intSet THEN IF z^.conval^.intval = MIN(LONGINT) THEN err(203) @@ -451,32 +451,32 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) VAR res: INTEGER; BEGIN CASE f OF - |OPT.Undef: res := OPM.eql + |OPT.Undef: res := OPS.eql |OPT.Byte, OPT.Char - ..OPT.LInt: IF xval^.intval < yval^.intval THEN res := OPM.lss - ELSIF xval^.intval > yval^.intval THEN res := OPM.gtr - ELSE res := OPM.eql + ..OPT.LInt: IF xval^.intval < yval^.intval THEN res := OPS.lss + ELSIF xval^.intval > yval^.intval THEN res := OPS.gtr + ELSE res := OPS.eql END |OPT.Real, - OPT.LReal: IF xval^.realval < yval^.realval THEN res := OPM.lss - ELSIF xval^.realval > yval^.realval THEN res := OPM.gtr - ELSE res := OPM.eql + OPT.LReal: IF xval^.realval < yval^.realval THEN res := OPS.lss + ELSIF xval^.realval > yval^.realval THEN res := OPS.gtr + ELSE res := OPS.eql END - |OPT.Bool: IF xval^.intval # yval^.intval THEN res := OPM.neq - ELSE res := OPM.eql + |OPT.Bool: IF xval^.intval # yval^.intval THEN res := OPS.neq + ELSE res := OPS.eql END - |OPT.Set: IF xval^.setval # yval^.setval THEN res := OPM.neq - ELSE res := OPM.eql + |OPT.Set: IF xval^.setval # yval^.setval THEN res := OPS.neq + ELSE res := OPS.eql END - |OPT.String: IF xval^.ext^ < yval^.ext^ THEN res := OPM.lss - ELSIF xval^.ext^ > yval^.ext^ THEN res := OPM.gtr - ELSE res := OPM.eql + |OPT.String: IF xval^.ext^ < yval^.ext^ THEN res := OPS.lss + ELSIF xval^.ext^ > yval^.ext^ THEN res := OPS.gtr + ELSE res := OPS.eql END |OPT.NilTyp, OPT.Pointer, - OPT.ProcTyp: IF xval^.intval # yval^.intval THEN res := OPM.neq - ELSE res := OPM.eql + OPT.ProcTyp: IF xval^.intval # yval^.intval THEN res := OPS.neq + ELSE res := OPS.eql END ELSE OPM.LogWStr("unhandled case in OPB.ConstCmp, f = "); OPM.LogWNum(f, 0); OPM.LogWLn; END ; @@ -518,7 +518,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) f := x^.typ^.form END ; (* {x^.typ = y^.typ} *) CASE op OF - |OPM.times: IF f IN OPT.intSet THEN xv := xval^.intval; yv := yval^.intval; + |OPS.times: IF f IN OPT.intSet THEN xv := xval^.intval; yv := yval^.intval; IF (xv = 0) OR (yv = 0) OR (* division with negative numbers is not defined *) (xv > 0) & (yv > 0) & (yv <= MAX(LONGINT) DIV xv) OR (xv > 0) & (yv < 0) & (yv >= MIN(LONGINT) DIV xv) OR @@ -537,7 +537,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) xval^.setval := xval^.setval * yval^.setval ELSIF f # OPT.Undef THEN err(101) END - |OPM.slash: IF f IN OPT.intSet THEN + |OPS.slash: IF f IN OPT.intSet THEN IF yval^.intval # 0 THEN xval^.realval := xval^.intval / yval^.intval; CheckRealType(OPT.Real, 205, xval) ELSE err(205); xval^.realval := 1.0 @@ -553,25 +553,25 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) xval^.setval := xval^.setval / yval^.setval ELSIF f # OPT.Undef THEN err(102) END - |OPM.div: IF f IN OPT.intSet THEN + |OPS.div: IF f IN OPT.intSet THEN IF yval^.intval # 0 THEN xval^.intval := xval^.intval DIV yval^.intval; SetIntType(x) ELSE err(205) END ELSIF f # OPT.Undef THEN err(103) END - |OPM.mod: IF f IN OPT.intSet THEN + |OPS.mod: IF f IN OPT.intSet THEN IF yval^.intval # 0 THEN xval^.intval := xval^.intval MOD yval^.intval; SetIntType(x) ELSE err(205) END ELSIF f # OPT.Undef THEN err(104) END - |OPM.and: IF f = OPT.Bool THEN + |OPS.and: IF f = OPT.Bool THEN xval^.intval := BoolToInt(IntToBool(xval^.intval) & IntToBool(yval^.intval)) ELSE err(94) END - |OPM.plus: IF f IN OPT.intSet THEN + |OPS.plus: IF f IN OPT.intSet THEN temp := (yval^.intval >= 0) & (xval^.intval <= MAX(LONGINT) - yval^.intval); IF temp OR (yval^.intval < 0) & (xval^.intval >= MIN(LONGINT) - yval^.intval) THEN INC(xval^.intval, yval^.intval); SetIntType(x) @@ -587,7 +587,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) xval^.setval := xval^.setval + yval^.setval ELSIF f # OPT.Undef THEN err(105) END - |OPM.minus: IF f IN OPT.intSet THEN + |OPS.minus: IF f IN OPT.intSet THEN IF (yval^.intval >= 0) & (xval^.intval >= MIN(LONGINT) + yval^.intval) OR (yval^.intval < 0) & (xval^.intval <= MAX(LONGINT) + yval^.intval) THEN DEC(xval^.intval, yval^.intval); SetIntType(x) @@ -603,23 +603,23 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) xval^.setval := xval^.setval - yval^.setval ELSIF f # OPT.Undef THEN err(106) END - |OPM.or: IF f = OPT.Bool THEN + |OPS.or: IF f = OPT.Bool THEN xval^.intval := BoolToInt(IntToBool(xval^.intval) OR IntToBool(yval^.intval)) ELSE err(95) END - |OPM.eql: xval^.intval := BoolToInt(ConstCmp() = OPM.eql) - |OPM.neq: xval^.intval := BoolToInt(ConstCmp() # OPM.eql) - |OPM.lss: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) - ELSE xval^.intval := BoolToInt(ConstCmp() = OPM.lss) + |OPS.eql: xval^.intval := BoolToInt(ConstCmp() = OPS.eql) + |OPS.neq: xval^.intval := BoolToInt(ConstCmp() # OPS.eql) + |OPS.lss: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) + ELSE xval^.intval := BoolToInt(ConstCmp() = OPS.lss) END - |OPM.leq: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) - ELSE xval^.intval := BoolToInt(ConstCmp() # OPM.gtr) + |OPS.leq: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) + ELSE xval^.intval := BoolToInt(ConstCmp() # OPS.gtr) END - |OPM.gtr: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) - ELSE xval^.intval := BoolToInt(ConstCmp() = OPM.gtr) + |OPS.gtr: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) + ELSE xval^.intval := BoolToInt(ConstCmp() = OPS.gtr) END - |OPM.geq: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) - ELSE xval^.intval := BoolToInt(ConstCmp() # OPM.lss) + |OPS.geq: IF f IN {OPT.Bool, OPT.Set, OPT.NilTyp, OPT.Pointer} THEN err(108) + ELSE xval^.intval := BoolToInt(ConstCmp() # OPS.lss) END ELSE OPM.LogWStr("unhandled case in OPB.ConstOp, op = "); OPM.LogWNum(op, 0); OPM.LogWLn; @@ -720,7 +720,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) END ; (* {z^.typ = y^.typ} *) typ := z^.typ; f := typ^.form; g := y^.typ^.form; CASE op OF - |OPM.times: do := TRUE; + |OPS.times: do := TRUE; IF f IN OPT.intSet THEN IF z^.class = OPT.Nconst THEN val := z^.conval^.intval; IF val = 1 THEN do := FALSE; z := y @@ -739,7 +739,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) ELSIF ~(f IN {OPT.Undef, OPT.Real..OPT.Set}) THEN err(105); typ := OPT.undftyp END ; IF do THEN NewOp(op, typ, z, y) END - |OPM.slash: IF f IN OPT.intSet THEN + |OPS.slash: IF f IN OPT.intSet THEN IF (y^.class = OPT.Nconst) & (y^.conval^.intval = 0) THEN err(205) END ; Convert(z, OPT.realtyp); Convert(y, OPT.realtyp); typ := OPT.realtyp @@ -748,7 +748,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) ELSIF (f # OPT.Set) & (f # OPT.Undef) THEN err(102); typ := OPT.undftyp END ; NewOp(op, typ, z, y) - |OPM.div: do := TRUE; + |OPS.div: do := TRUE; IF f IN OPT.intSet THEN IF y^.class = OPT.Nconst THEN val := y^.conval^.intval; IF val = 0 THEN err(205) @@ -760,7 +760,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) ELSIF f # OPT.Undef THEN err(103); typ := OPT.undftyp END ; IF do THEN NewOp(op, typ, z, y) END - |OPM.mod: IF f IN OPT.intSet THEN + |OPS.mod: IF f IN OPT.intSet THEN IF y^.class = OPT.Nconst THEN IF y^.conval^.intval = 0 THEN err(205) ELSIF log(y^.conval^.intval) = 1 THEN @@ -770,7 +770,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) ELSIF f # OPT.Undef THEN err(104); typ := OPT.undftyp END ; NewOp(op, typ, z, y) - |OPM.and: IF f = OPT.Bool THEN + |OPS.and: IF f = OPT.Bool THEN IF z^.class = OPT.Nconst THEN IF IntToBool(z^.conval^.intval) THEN z := y END ELSIF (y^.class = OPT.Nconst) & IntToBool(y^.conval^.intval) THEN (* optimize z & TRUE -> z *) @@ -780,16 +780,16 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) END ELSIF f # OPT.Undef THEN err(94); z^.typ := OPT.undftyp END - |OPM.plus: IF ~(f IN {OPT.Undef, OPT.SInt..OPT.Set}) THEN err(105); typ := OPT.undftyp END ; + |OPS.plus: IF ~(f IN {OPT.Undef, OPT.SInt..OPT.Set}) THEN err(105); typ := OPT.undftyp END ; do := TRUE; IF f IN OPT.intSet THEN IF (z^.class = OPT.Nconst) & (z^.conval^.intval = 0) THEN do := FALSE; z := y END ; IF (y^.class = OPT.Nconst) & (y^.conval^.intval = 0) THEN do := FALSE END END ; IF do THEN NewOp(op, typ, z, y) END - |OPM.minus: IF ~(f IN {OPT.Undef, OPT.SInt..OPT.Set}) THEN err(106); typ := OPT.undftyp END ; + |OPS.minus: IF ~(f IN {OPT.Undef, OPT.SInt..OPT.Set}) THEN err(106); typ := OPT.undftyp END ; IF ~(f IN OPT.intSet) OR (y^.class # OPT.Nconst) OR (y^.conval^.intval # 0) THEN NewOp(op, typ, z, y) END - |OPM.or: IF f = OPT.Bool THEN + |OPS.or: IF f = OPT.Bool THEN IF z^.class = OPT.Nconst THEN IF ~IntToBool(z^.conval^.intval) THEN z := y END ELSIF (y^.class = OPT.Nconst) & ~IntToBool(y^.conval^.intval) THEN (* optimize z OR FALSE -> z *) @@ -799,15 +799,15 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) END ELSIF f # OPT.Undef THEN err(95); z^.typ := OPT.undftyp END - |OPM.eql, - OPM.neq: IF (f IN {OPT.Undef..OPT.Set, OPT.NilTyp, OPT.Pointer, OPT.ProcTyp}) OR strings(z, y) THEN typ := OPT.booltyp + |OPS.eql, + OPS.neq: IF (f IN {OPT.Undef..OPT.Set, OPT.NilTyp, OPT.Pointer, OPT.ProcTyp}) OR strings(z, y) THEN typ := OPT.booltyp ELSE err(107); typ := OPT.undftyp END ; NewOp(op, typ, z, y) - |OPM.lss, - OPM.leq, - OPM.gtr, - OPM.geq: IF (f IN {OPT.Undef, OPT.Char..OPT.LReal}) OR strings(z, y) THEN typ := OPT.booltyp + |OPS.lss, + OPS.leq, + OPS.gtr, + OPS.geq: IF (f IN {OPT.Undef, OPT.Char..OPT.LReal}) OR strings(z, y) THEN typ := OPT.booltyp ELSE OPM.LogWLn; OPM.LogWStr("ELSE in Op()"); OPM.LogWLn; err(108); typ := OPT.undftyp @@ -1114,7 +1114,7 @@ MODULE OPB; (* RC 6.3.89 / 21.2.94 *) (* object model 17.1.93 *) |OPT.assertfn: (*ASSERT*) IF (x^.class = OPT.Ntype) OR (x^.class = OPT.Nproc) THEN err(126); x := NewBoolConst(FALSE) ELSIF f # OPT.Bool THEN err(120); x := NewBoolConst(FALSE) - ELSE MOp(OPM.not, x) + ELSE MOp(OPS.not, x) END ELSE OPM.LogWStr("unhandled case in OPB.StPar0, fctno = "); OPM.LogWNum(fctno, 0); OPM.LogWLn; END ; diff --git a/src/compiler/OPC.Mod b/src/compiler/OPC.Mod index 5e45a626..1076a289 100644 --- a/src/compiler/OPC.Mod +++ b/src/compiler/OPC.Mod @@ -1175,12 +1175,12 @@ MODULE OPC; (* copyright (c) J. Templ 12.7.95 / 3.7.96 *) PROCEDURE Cmp*(rel: INTEGER); BEGIN CASE rel OF - | OPM.eql: OPM.WriteString(" == ") - | OPM.neq: OPM.WriteString(" != ") - | OPM.lss: OPM.WriteString(" < ") - | OPM.leq: OPM.WriteString(" <= ") - | OPM.gtr: OPM.WriteString(" > ") - | OPM.geq: OPM.WriteString(" >= ") + | OPT.eql: OPM.WriteString(" == ") + | OPT.neq: OPM.WriteString(" != ") + | OPT.lss: OPM.WriteString(" < ") + | OPT.leq: OPM.WriteString(" <= ") + | OPT.gtr: OPM.WriteString(" > ") + | OPT.geq: OPM.WriteString(" >= ") ELSE OPM.LogWStr("unhandled case in OPC.Cmp, rel = "); OPM.LogWNum(rel, 0); OPM.LogWLn; END; END Cmp; diff --git a/src/compiler/OPM.cmdln.Mod b/src/compiler/OPM.cmdln.Mod index ef1f51a7..74c0f5dc 100644 --- a/src/compiler/OPM.cmdln.Mod +++ b/src/compiler/OPM.cmdln.Mod @@ -82,45 +82,6 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) - (***** Symbols *****) - - - (* Symbols values (also used as op values): - | 0 1 2 3 4 - ---|-------------------------------------------------------- - 0 | null * / DIV MOD - 5 | & + - OR = - 10 | # < <= > >= - 15 | IN IS ^ . , - 20 | : .. ) ] } - 25 | OF THEN DO TO BY - 30 | ( [ { ~ := - 35 | number NIL string OPM.ident ; - 40 | | END ELSE ELSIF UNTIL - 45 | IF CASE WHILE REPEAT FOR - 50 | LOOP WITH EXIT RETURN ARRAY - 55 | RECORD POINTER BEGIN CONST TYPE - 60 | VAR PROCEDURE IMPORT MODULE eof - *) - - null* = 0; times* = 1; slash* = 2; div* = 3; mod* = 4; - and* = 5; plus* = 6; minus* = 7; or* = 8; eql* = 9; - neq* = 10; lss* = 11; leq* = 12; gtr* = 13; geq* = 14; - in* = 15; is* = 16; arrow* = 17; period* = 18; comma* = 19; - colon* = 20; upto* = 21; rparen* = 22; rbrak* = 23; rbrace* = 24; - of* = 25; then* = 26; do* = 27; to* = 28; by* = 29; - lparen* = 30; lbrak* = 31; lbrace* = 32; not* = 33; becomes* = 34; - number* = 35; nil* = 36; string* = 37; ident* = 38; semicolon* = 39; - bar* = 40; end* = 41; else* = 42; elsif* = 43; until* = 44; - if* = 45; case* = 46; while* = 47; repeat* = 48; for* = 49; - loop* = 50; with* = 51; exit* = 52; return* = 53; array* = 54; - record* = 55; pointer* = 56; begin* = 57; const* = 58; type* = 59; - var* = 60; procedure* = 61; import* = 62; module* = 63; eof* = 64; - - (* Symbol numtyp values *) - char* = 1; integer* = 2; real* = 3; longreal* = 4; - - TYPE FileName = ARRAY 32 OF CHAR; @@ -131,15 +92,8 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) ByteSize*, CharSize*, BoolSize*, SIntSize*, IntSize*, LIntSize*, SetSize*, RealSize*, LRealSize*, PointerSize*, ProcSize*, RecSize*, - (* - CharAlign*, BoolAlign*, SIntAlign*, IntAlign*, - LIntAlign*, SetAlign*, RealAlign*, LRealAlign*, PointerAlign*, ProcAlign*, RecAlign*, - *) MaxSet*: INTEGER; - (* - MinSInt*, MinInt*, MinLInt*, MaxSInt*, MaxInt*, MaxLInt*, - *) MaxIndex*: LONGINT; MinReal*, MaxReal*, MinLReal*, MaxLReal*: LONGREAL; diff --git a/src/compiler/OPP.Mod b/src/compiler/OPP.Mod index a73ff835..09583505 100644 --- a/src/compiler/OPP.Mod +++ b/src/compiler/OPP.Mod @@ -31,13 +31,13 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE qualident(VAR id: OPT.Object); VAR obj: OPT.Object; lev: SHORTINT; - BEGIN (*sym = OPM.ident*) + BEGIN (*sym = OPS.ident*) OPT.Find(obj); OPS.Get(sym); - IF (sym = OPM.period) & (obj # NIL) & (obj^.mode = OPT.Mod) THEN + IF (sym = OPS.period) & (obj # NIL) & (obj^.mode = OPT.Mod) THEN OPS.Get(sym); - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN OPT.FindImport(obj, obj); OPS.Get(sym) - ELSE err(OPM.ident); obj := NIL + ELSE err(OPS.ident); obj := NIL END END ; IF obj = NIL THEN err(0); @@ -60,9 +60,9 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE CheckMark(VAR vis: SHORTINT); BEGIN OPS.Get(sym); - IF (sym = OPM.times) OR (sym = OPM.minus) THEN + IF (sym = OPS.times) OR (sym = OPS.minus) THEN IF level > 0 THEN err(47) END ; - IF sym = OPM.times THEN vis := OPT.external ELSE vis := OPT.externalR END ; + IF sym = OPS.times THEN vis := OPT.external ELSE vis := OPT.externalR END ; OPS.Get(sym) ELSE vis := OPT.internal END @@ -71,14 +71,14 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE CheckSysFlag(VAR sysflag: INTEGER; default: INTEGER); VAR x: OPT.Node; sf: LONGINT; BEGIN - IF sym = OPM.lbrak THEN OPS.Get(sym); + IF sym = OPS.lbrak THEN OPS.Get(sym); IF ~OPT.SYSimported THEN err(135) END; ConstExpression(x); IF x^.typ^.form IN OPT.intSet THEN sf := x^.conval^.intval; IF (sf < 0) OR (sf > OPM.MaxSysFlag) THEN err(220); sf := 0 END ELSE err(51); sf := 0 END ; - sysflag := SHORT(sf); CheckSym(OPM.rbrak) + sysflag := SHORT(sf); CheckSym(OPS.rbrak) ELSE sysflag := default END END CheckSysFlag; @@ -88,9 +88,9 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) ftyp: OPT.Struct; sysflag: INTEGER; BEGIN typ := OPT.NewStr(OPT.Comp, OPT.Record); typ^.BaseTyp := NIL; CheckSysFlag(sysflag, -1); - IF sym = OPM.lparen THEN + IF sym = OPS.lparen THEN OPS.Get(sym); (*record extension*) - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN qualident(base); IF (base^.mode = OPT.Typ) & (base^.typ^.comp = OPT.Record) THEN IF base^.typ = banned THEN err(58) @@ -99,16 +99,16 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) END ELSE err(52) END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - CheckSym(OPM.rparen) + CheckSym(OPS.rparen) END ; IF sysflag >= 0 THEN typ^.sysflag := sysflag END ; OPT.OpenScope(0, NIL); first := NIL; last := NIL; LOOP - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN LOOP - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN IF typ^.BaseTyp # NIL THEN OPT.FindField(OPS.name, typ^.BaseTyp, fld); IF fld # NIL THEN err(1) END @@ -118,22 +118,22 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) IF first = NIL THEN first := fld END ; IF last = NIL THEN typ^.link := fld ELSE last^.link := fld END ; last := fld - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF sym = OPM.ident THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF sym = OPS.ident THEN err(OPS.comma) ELSE EXIT END END ; - CheckSym(OPM.colon); Type(ftyp, banned); + CheckSym(OPS.colon); Type(ftyp, banned); ftyp^.pvused := TRUE; IF ftyp^.comp = OPT.DynArr THEN ftyp := OPT.undftyp; err(88) END ; WHILE first # NIL DO first^.typ := ftyp; first := first^.link END END ; - IF sym = OPM.semicolon THEN OPS.Get(sym) - ELSIF sym = OPM.ident THEN err(OPM.semicolon) + IF sym = OPS.semicolon THEN OPS.Get(sym) + ELSIF sym = OPS.ident THEN err(OPS.semicolon) ELSE EXIT END END ; @@ -143,7 +143,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE ArrayType(VAR typ, banned: OPT.Struct); VAR x: OPT.Node; n: LONGINT; sysflag: INTEGER; BEGIN CheckSysFlag(sysflag, 0); - IF sym = OPM.of THEN (*dynamic array*) + IF sym = OPS.of THEN (*dynamic array*) typ := OPT.NewStr(OPT.Comp, OPT.DynArr); typ^.mno := 0; typ^.sysflag := sysflag; OPS.Get(sym); Type(typ^.BaseTyp, banned); typ^.BaseTyp^.pvused := TRUE; @@ -157,11 +157,11 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) ELSE err(51); n := 1 END ; typ^.n := n; - IF sym = OPM.of THEN + IF sym = OPS.of THEN OPS.Get(sym); Type(typ^.BaseTyp, banned); typ^.BaseTyp^.pvused := TRUE - ELSIF sym = OPM.comma THEN - OPS.Get(sym); IF sym # OPM.of THEN ArrayType(typ^.BaseTyp, banned) END + ELSIF sym = OPS.comma THEN + OPS.Get(sym); IF sym # OPS.of THEN ArrayType(typ^.BaseTyp, banned) END ELSE err(35) END ; IF typ^.BaseTyp^.comp = OPT.DynArr THEN typ^.BaseTyp := OPT.undftyp; err(88) END @@ -171,8 +171,8 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE PointerType(VAR typ: OPT.Struct); VAR id: OPT.Object; BEGIN typ := OPT.NewStr(OPT.Pointer, OPT.Basic); CheckSysFlag(typ^.sysflag, 0); - CheckSym(OPM.to); - IF sym = OPM.ident THEN OPT.Find(id); + CheckSym(OPS.to); + IF sym = OPS.ident THEN OPT.Find(id); IF id = NIL THEN IF nofFwdPtr < LEN(FwdPtr) THEN FwdPtr[nofFwdPtr] := typ; INC(nofFwdPtr) ELSE err(224) @@ -199,45 +199,45 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) VAR mode: SHORTINT; par, first, last, res: OPT.Object; typ: OPT.Struct; BEGIN first := NIL; last := firstPar; - IF (sym = OPM.ident) OR (sym = OPM.var) THEN + IF (sym = OPS.ident) OR (sym = OPS.var) THEN LOOP - IF sym = OPM.var THEN OPS.Get(sym); mode := OPT.VarPar ELSE mode := OPT.Var END ; + IF sym = OPS.var THEN OPS.Get(sym); mode := OPT.VarPar ELSE mode := OPT.Var END ; LOOP - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN OPT.Insert(OPS.name, par); OPS.Get(sym); par^.mode := mode; par^.link := NIL; IF first = NIL THEN first := par END ; IF firstPar = NIL THEN firstPar := par ELSE last^.link := par END ; last := par - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF sym = OPM.ident THEN err(OPM.comma) - ELSIF sym = OPM.var THEN err(OPM.comma); OPS.Get(sym) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF sym = OPS.ident THEN err(OPS.comma) + ELSIF sym = OPS.var THEN err(OPS.comma); OPS.Get(sym) ELSE EXIT END END ; - CheckSym(OPM.colon); Type(typ, OPT.notyp); + CheckSym(OPS.colon); Type(typ, OPT.notyp); IF mode = OPT.Var THEN typ^.pvused := TRUE END ; (* typ^.pbused is set when parameter type name is parsed *) WHILE first # NIL DO first^.typ := typ; first := first^.link END ; - IF sym = OPM.semicolon THEN OPS.Get(sym) - ELSIF sym = OPM.ident THEN err(OPM.semicolon) + IF sym = OPS.semicolon THEN OPS.Get(sym) + ELSIF sym = OPS.ident THEN err(OPS.semicolon) ELSE EXIT END END END ; - CheckSym(OPM.rparen); - IF sym = OPM.colon THEN + CheckSym(OPS.rparen); + IF sym = OPS.colon THEN OPS.Get(sym); resTyp := OPT.undftyp; - IF sym = OPM.ident THEN qualident(res); + IF sym = OPS.ident THEN qualident(res); IF res^.mode = OPT.Typ THEN IF (res^.typ^.form < OPT.Comp) (*OR (res^.typ^.form >= Int8) & (res^.typ^.form <= Int64)*) THEN resTyp := res^.typ; ELSE err(54) END ELSE err(52) END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ELSE resTyp := OPT.notyp END @@ -246,26 +246,26 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE TypeDecl(VAR typ, banned: OPT.Struct); VAR id: OPT.Object; BEGIN typ := OPT.undftyp; - IF sym < OPM.lparen THEN err(12); - REPEAT OPS.Get(sym) UNTIL sym >= OPM.lparen + IF sym < OPS.lparen THEN err(12); + REPEAT OPS.Get(sym) UNTIL sym >= OPS.lparen END ; - IF sym = OPM.ident THEN qualident(id); + IF sym = OPS.ident THEN qualident(id); IF id^.mode = OPT.Typ THEN IF id^.typ = banned THEN err(58) ELSE typ := id.typ END ELSE err(52) END - ELSIF sym = OPM.array THEN + ELSIF sym = OPS.array THEN OPS.Get(sym); ArrayType(typ, banned) - ELSIF sym = OPM.record THEN + ELSIF sym = OPS.record THEN OPS.Get(sym); RecordType(typ, banned); - OPB.Inittd(TDinit, lastTDinit, typ); CheckSym(OPM.end) - ELSIF sym = OPM.pointer THEN + OPB.Inittd(TDinit, lastTDinit, typ); CheckSym(OPS.end) + ELSIF sym = OPS.pointer THEN OPS.Get(sym); PointerType(typ) - ELSIF sym = OPM.procedure THEN + ELSIF sym = OPS.procedure THEN OPS.Get(sym); typ := OPT.NewStr(OPT.ProcTyp, OPT.Basic); CheckSysFlag(typ^.sysflag, 0); - IF sym = OPM.lparen THEN + IF sym = OPS.lparen THEN OPS.Get(sym); OPT.OpenScope(level, NIL); FormalParameters(typ^.link, typ^.BaseTyp); OPT.CloseScope ELSE typ^.BaseTyp := OPT.notyp; typ^.link := NIL @@ -273,8 +273,8 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) ELSE err(12) END ; LOOP - IF (sym >= OPM.semicolon) & (sym <= OPM.else) OR (sym = OPM.rparen) OR (sym = OPM.eof) THEN EXIT END; - err(15); IF sym = OPM.ident THEN EXIT END; + IF (sym >= OPS.semicolon) & (sym <= OPS.else) OR (sym = OPS.rparen) OR (sym = OPS.eof) THEN EXIT END; + err(15); IF sym = OPS.ident THEN EXIT END; OPS.Get(sym) END END TypeDecl; @@ -288,21 +288,21 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) VAR obj, proc: OPT.Object; y: OPT.Node; typ: OPT.Struct; name: OPS.Name; BEGIN LOOP - IF sym = OPM.lbrak THEN OPS.Get(sym); + IF sym = OPS.lbrak THEN OPS.Get(sym); LOOP IF (x^.typ # NIL) & (x^.typ^.form = OPT.Pointer) THEN OPB.DeRef(x) END ; Expression(y); OPB.Index(x, y); - IF sym = OPM.comma THEN OPS.Get(sym) ELSE EXIT END + IF sym = OPS.comma THEN OPS.Get(sym) ELSE EXIT END END ; - CheckSym(OPM.rbrak) - ELSIF sym = OPM.period THEN OPS.Get(sym); - IF sym = OPM.ident THEN name := OPS.name; OPS.Get(sym); + CheckSym(OPS.rbrak) + ELSIF sym = OPS.period THEN OPS.Get(sym); + IF sym = OPS.ident THEN name := OPS.name; OPS.Get(sym); IF x^.typ # NIL THEN IF x^.typ^.form = OPT.Pointer THEN OPB.DeRef(x) END ; IF x^.typ^.comp = OPT.Record THEN OPT.FindField(name, x^.typ, obj); OPB.Field(x, obj); IF (obj # NIL) & (obj^.mode = OPT.TProc) THEN - IF sym = OPM.arrow THEN (* super call *) OPS.Get(sym); + IF sym = OPS.arrow THEN (* super call *) OPS.Get(sym); y := x^.left; IF y^.class = OPT.Nderef THEN y := y^.left END ; (* y = record variable *) IF y^.obj # NIL THEN @@ -316,26 +316,26 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) ELSE err(75) END END ; - IF (obj^.typ # OPT.notyp) & (sym # OPM.lparen) THEN err(OPM.lparen) END + IF (obj^.typ # OPT.notyp) & (sym # OPS.lparen) THEN err(OPS.lparen) END END ELSE err(53) END ELSE err(52) END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END - ELSIF sym = OPM.arrow THEN OPS.Get(sym); OPB.DeRef(x) - ELSIF (sym = OPM.lparen) & (x^.class < OPT.Nconst) & (x^.typ^.form # OPT.ProcTyp) & + ELSIF sym = OPS.arrow THEN OPS.Get(sym); OPB.DeRef(x) + ELSIF (sym = OPS.lparen) & (x^.class < OPT.Nconst) & (x^.typ^.form # OPT.ProcTyp) & ((x^.obj = NIL) OR (x^.obj^.mode # OPT.TProc)) THEN OPS.Get(sym); - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN qualident(obj); IF obj^.mode = OPT.Typ THEN OPB.TypTest(x, obj, TRUE) ELSE err(52) END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - CheckSym(OPM.rparen) + CheckSym(OPS.rparen) ELSE EXIT END END @@ -344,15 +344,15 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE ActualParameters(VAR aparlist: OPT.Node; fpar: OPT.Object); VAR apar, last: OPT.Node; BEGIN aparlist := NIL; last := NIL; - IF sym # OPM.rparen THEN + IF sym # OPS.rparen THEN LOOP Expression(apar); IF fpar # NIL THEN OPB.Param(apar, fpar); OPB.Link(aparlist, last, apar); fpar := fpar^.link; ELSE err(64) END ; - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF (OPM.lparen <= sym) & (sym <= OPM.ident) THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF (OPS.lparen <= sym) & (sym <= OPS.ident) THEN err(OPS.comma) ELSE EXIT END END @@ -363,23 +363,23 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE StandProcCall(VAR x: OPT.Node); VAR y: OPT.Node; m: SHORTINT; n: INTEGER; BEGIN m := SHORT(SHORT(x^.obj^.adr)); n := 0; - IF sym = OPM.lparen THEN OPS.Get(sym); - IF sym # OPM.rparen THEN + IF sym = OPS.lparen THEN OPS.Get(sym); + IF sym # OPS.rparen THEN LOOP IF n = 0 THEN Expression(x); OPB.StPar0(x, m); n := 1 ELSIF n = 1 THEN Expression(y); OPB.StPar1(x, y, m); n := 2 ELSE Expression(y); OPB.StParN(x, y, m, n); INC(n) END ; - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF (OPM.lparen <= sym) & (sym <= OPM.ident) THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF (OPS.lparen <= sym) & (sym <= OPS.ident) THEN err(OPS.comma) ELSE EXIT END END ; - CheckSym(OPM.rparen) + CheckSym(OPS.rparen) ELSE OPS.Get(sym) END ; OPB.StFct(x, m, n) - ELSE err(OPM.lparen) + ELSE err(OPS.lparen) END ; IF (level > 0) & ((m = OPT.newfn) OR (m = OPT.sysnewfn)) THEN OPT.topScope^.link^.leaf := FALSE END END StandProcCall; @@ -387,7 +387,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE Element(VAR x: OPT.Node); VAR y: OPT.Node; BEGIN Expression(x); - IF sym = OPM.upto THEN + IF sym = OPS.upto THEN OPS.Get(sym); Expression(y); OPB.SetRange(x, y) ELSE OPB.SetElem(x) END @@ -396,57 +396,57 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE Sets(VAR x: OPT.Node); VAR y: OPT.Node; BEGIN - IF sym # OPM.rbrace THEN + IF sym # OPS.rbrace THEN Element(x); LOOP - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF (OPM.lparen <= sym) & (sym <= OPM.ident) THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF (OPS.lparen <= sym) & (sym <= OPS.ident) THEN err(OPS.comma) ELSE EXIT END ; - Element(y); OPB.Op(OPM.plus, x, y) + Element(y); OPB.Op(OPS.plus, x, y) END ELSE x := OPB.EmptySet() END ; - CheckSym(OPM.rbrace) + CheckSym(OPS.rbrace) END Sets; PROCEDURE Factor(VAR x: OPT.Node); VAR fpar, id: OPT.Object; apar: OPT.Node; BEGIN - IF sym < OPM.lparen THEN err(13); - REPEAT OPS.Get(sym) UNTIL sym >= OPM.lparen + IF sym < OPS.lparen THEN err(13); + REPEAT OPS.Get(sym) UNTIL sym >= OPS.lparen END ; - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN qualident(id); x := OPB.NewLeaf(id); selector(x); IF (x^.class = OPT.Nproc) & (x^.obj^.mode = OPT.SProc) THEN StandProcCall(x) (* x may be NIL *) - ELSIF sym = OPM.lparen THEN + ELSIF sym = OPS.lparen THEN OPS.Get(sym); OPB.PrepCall(x, fpar); ActualParameters(apar, fpar); OPB.Call(x, apar, fpar); - CheckSym(OPM.rparen); + CheckSym(OPS.rparen); IF level > 0 THEN OPT.topScope^.link^.leaf := FALSE END END - ELSIF sym = OPM.number THEN + ELSIF sym = OPS.number THEN CASE OPS.numtyp OF - | OPM.char: x := OPB.NewIntConst(OPS.intval); x^.typ := OPT.chartyp - | OPM.integer: x := OPB.NewIntConst(OPS.intval) - | OPM.real: x := OPB.NewRealConst(OPS.realval, OPT.realtyp) - | OPM.longreal: x := OPB.NewRealConst(OPS.lrlval, OPT.lrltyp) + | OPS.char: x := OPB.NewIntConst(OPS.intval); x^.typ := OPT.chartyp + | OPS.integer: x := OPB.NewIntConst(OPS.intval) + | OPS.real: x := OPB.NewRealConst(OPS.realval, OPT.realtyp) + | OPS.longreal: x := OPB.NewRealConst(OPS.lrlval, OPT.lrltyp) ELSE OPM.LogWStr("unhandled case in OPP.Factor, OPS.numtyp = "); OPM.LogWNum(OPS.numtyp, 0); OPM.LogWLn; END ; OPS.Get(sym) - ELSIF sym = OPM.string THEN + ELSIF sym = OPS.string THEN x := OPB.NewString(OPS.str, OPS.intval); OPS.Get(sym) - ELSIF sym = OPM.nil THEN + ELSIF sym = OPS.nil THEN x := OPB.Nil(); OPS.Get(sym) - ELSIF sym = OPM.lparen THEN - OPS.Get(sym); Expression(x); CheckSym(OPM.rparen) - ELSIF sym = OPM.lbrak THEN - OPS.Get(sym); err(OPM.lparen); Expression(x); CheckSym(OPM.rparen) - ELSIF sym = OPM.lbrace THEN OPS.Get(sym); Sets(x) - ELSIF sym = OPM.not THEN - OPS.Get(sym); Factor(x); OPB.MOp(OPM.not, x) + ELSIF sym = OPS.lparen THEN + OPS.Get(sym); Expression(x); CheckSym(OPS.rparen) + ELSIF sym = OPS.lbrak THEN + OPS.Get(sym); err(OPS.lparen); Expression(x); CheckSym(OPS.rparen) + ELSIF sym = OPS.lbrace THEN OPS.Get(sym); Sets(x) + ELSIF sym = OPS.not THEN + OPS.Get(sym); Factor(x); OPB.MOp(OPS.not, x) ELSE err(13); OPS.Get(sym); x := NIL END ; IF x = NIL THEN x := OPB.NewIntConst(1); x^.typ := OPT.undftyp END @@ -455,7 +455,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE Term(VAR x: OPT.Node); VAR y: OPT.Node; mulop: SHORTINT; BEGIN Factor(x); - WHILE (OPM.times <= sym) & (sym <= OPM.and) DO + WHILE (OPS.times <= sym) & (sym <= OPS.and) DO mulop := sym; OPS.Get(sym); Factor(y); OPB.Op(mulop, x, y) END @@ -464,11 +464,11 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE SimpleExpression(VAR x: OPT.Node); VAR y: OPT.Node; addop: SHORTINT; BEGIN - IF sym = OPM.minus THEN OPS.Get(sym); Term(x); OPB.MOp(OPM.minus, x) - ELSIF sym = OPM.plus THEN OPS.Get(sym); Term(x); OPB.MOp(OPM.plus, x) + IF sym = OPS.minus THEN OPS.Get(sym); Term(x); OPB.MOp(OPS.minus, x) + ELSIF sym = OPS.plus THEN OPS.Get(sym); Term(x); OPB.MOp(OPS.plus, x) ELSE Term(x) END ; - WHILE (OPM.plus <= sym) & (sym <= OPM.or) DO + WHILE (OPS.plus <= sym) & (sym <= OPS.or) DO addop := sym; OPS.Get(sym); Term(y); OPB.Op(addop, x, y) END @@ -477,19 +477,19 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE Expression(VAR x: OPT.Node); VAR y: OPT.Node; obj: OPT.Object; relation: SHORTINT; BEGIN SimpleExpression(x); - IF (OPM.eql <= sym) & (sym <= OPM.geq) THEN + IF (OPS.eql <= sym) & (sym <= OPS.geq) THEN relation := sym; OPS.Get(sym); SimpleExpression(y); OPB.Op(relation, x, y) - ELSIF sym = OPM.in THEN + ELSIF sym = OPS.in THEN OPS.Get(sym); SimpleExpression(y); OPB.In(x, y) - ELSIF sym = OPM.is THEN + ELSIF sym = OPS.is THEN OPS.Get(sym); - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN qualident(obj); IF obj^.mode = OPT.Typ THEN OPB.TypTest(x, obj, FALSE) ELSE err(52) END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END END END Expression; @@ -497,9 +497,9 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) PROCEDURE Receiver(VAR mode: SHORTINT; VAR name: OPS.Name; VAR typ, rec: OPT.Struct); VAR obj: OPT.Object; BEGIN typ := OPT.undftyp; rec := NIL; - IF sym = OPM.var THEN OPS.Get(sym); mode := OPT.VarPar ELSE mode := OPT.Var END ; - name := OPS.name; CheckSym(OPM.ident); CheckSym(OPM.colon); - IF sym = OPM.ident THEN OPT.Find(obj); OPS.Get(sym); + IF sym = OPS.var THEN OPS.Get(sym); mode := OPT.VarPar ELSE mode := OPT.Var END ; + name := OPS.name; CheckSym(OPS.ident); CheckSym(OPS.colon); + IF sym = OPS.ident THEN OPT.Find(obj); OPS.Get(sym); IF obj = NIL THEN err(0) ELSIF obj^.mode # OPT.Typ THEN err(72) ELSE typ := obj^.typ; rec := typ; @@ -508,9 +508,9 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) (mode = OPT.VarPar) & (typ^.comp = OPT.Record)) THEN err(70); rec := NIL END ; IF (rec # NIL) & (rec^.mno # level) THEN err(72); rec := NIL END END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - CheckSym(OPM.rparen); + CheckSym(OPS.rparen); IF rec = NIL THEN rec := OPT.NewStr(OPT.Comp, OPT.Record); rec^.BaseTyp := NIL END END Receiver; @@ -533,7 +533,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) VAR ext: OPT.ConstExt; n: INTEGER; c: LONGINT; BEGIN ext := OPT.NewExt(); proc^.conval^.ext := ext; n := 0; - IF sym = OPM.string THEN + IF sym = OPS.string THEN WHILE OPS.str[n] # 0X DO ext[n+1] := OPS.str[n]; INC(n) END ; ext^[0] := CHR(n); OPS.Get(sym); (* @@ -542,14 +542,14 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) *) ELSE LOOP - IF sym = OPM.number THEN c := OPS.intval; INC(n); + IF sym = OPS.number THEN c := OPS.intval; INC(n); IF (c < 0) OR (c > 255) OR (n = OPT.MaxConstLen) THEN err(64); c := 1; n := 1 END ; OPS.Get(sym); ext^[n] := CHR(c) END ; - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF sym = OPM.number THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF sym = OPS.number THEN err(OPS.comma) ELSE ext^[0] := CHR(n); EXIT END END @@ -561,7 +561,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) BEGIN proc^.vis := vis; proc^.mode := mode; proc^.typ := OPT.notyp; proc^.conval := OPT.NewConst(); proc^.conval^.setval := {}; - IF sym = OPM.lparen THEN + IF sym = OPS.lparen THEN OPS.Get(sym); FormalParameters(proc^.link, proc^.typ) END ; IF fwd # NIL THEN @@ -577,13 +577,13 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) BEGIN c := OPM.errpos; INCL(proc^.conval^.setval, OPT.hasBody); - CheckSym(OPM.semicolon); Block(procdec, statseq); + CheckSym(OPS.semicolon); Block(procdec, statseq); OPB.Enter(procdec, statseq, proc); x := procdec; x^.conval := OPT.NewConst(); x^.conval^.intval := c; - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN IF OPS.name # proc^.name THEN err(4) END ; OPS.Get(sym) - ELSE err(OPM.ident) + ELSE err(OPS.ident) END END Body; @@ -596,7 +596,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) OPS.Get(sym); mode := OPT.TProc; IF level > 0 THEN err(73) END ; Receiver(objMode, objName, objTyp, recTyp); - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN name := OPS.name; CheckMark(vis); OPT.FindField(name, recTyp, fwd); OPT.FindField(name, recTyp^.BaseTyp, baseProc); @@ -626,23 +626,23 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) END ; IF ~forward THEN Body END ; DEC(level); OPT.CloseScope - ELSE err(OPM.ident) + ELSE err(OPS.ident) END END TProcDecl; BEGIN proc := NIL; forward := FALSE; x := NIL; mode := OPT.LProc; - IF (sym # OPM.ident) & (sym # OPM.lparen) THEN - IF sym = OPM.times THEN (* mode set later in OPB.CheckAssign *) - ELSIF sym = OPM.arrow THEN forward := TRUE - ELSIF sym = OPM.plus THEN mode := OPT.IProc - ELSIF sym = OPM.minus THEN mode := OPT.CProc - ELSE err(OPM.ident) + IF (sym # OPS.ident) & (sym # OPS.lparen) THEN + IF sym = OPS.times THEN (* mode set later in OPB.CheckAssign *) + ELSIF sym = OPS.arrow THEN forward := TRUE + ELSIF sym = OPS.plus THEN mode := OPT.IProc + ELSIF sym = OPS.minus THEN mode := OPT.CProc + ELSE err(OPS.ident) END ; IF (mode IN {OPT.IProc, OPT.CProc}) & ~OPT.SYSimported THEN err(135) END ; OPS.Get(sym) END ; - IF sym = OPM.lparen THEN TProcDecl - ELSIF sym = OPM.ident THEN OPT.Find(fwd); + IF sym = OPS.lparen THEN TProcDecl + ELSIF sym = OPS.ident THEN OPT.Find(fwd); name := OPS.name; CheckMark(vis); IF (vis # OPT.internal) & (mode = OPT.LProc) THEN mode := OPT.XProc END ; IF (fwd # NIL) & ((fwd^.mnolev # level) OR (fwd^.mode = OPT.SProc)) THEN fwd := NIL END ; @@ -661,7 +661,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) ELSIF ~forward THEN Body END ; DEC(level); OPT.CloseScope - ELSE err(OPM.ident) + ELSE err(OPS.ident) END END ProcedureDeclaration; @@ -676,7 +676,7 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) IF LabelForm < f THEN err(60) END ELSIF LabelForm # f THEN err(60) END ; - IF sym = OPM.upto THEN + IF sym = OPS.upto THEN OPS.Get(sym); ConstExpression(y); yval := y^.conval^.intval; IF (y^.typ^.form # f) & ~((f IN OPT.intSet) & (y^.typ^.form IN OPT.intSet)) THEN err(60) END ; IF yval < xval THEN err(63); yval := xval END @@ -697,8 +697,8 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) ELSE err(213) END ; OPB.Link(lab, lastlab, x); - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF (sym = OPM.number) OR (sym = OPM.ident) THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF (sym = OPS.number) OR (sym = OPS.ident) THEN err(OPS.comma) ELSE EXIT END END @@ -716,24 +716,24 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) IF (x^.class = OPT.Ntype) OR (x^.class = OPT.Nproc) THEN err(126) ELSIF ~(x^.typ^.form IN {OPT.Char..OPT.LInt}) THEN err(125) END ; - CheckSym(OPM.of); cases := NIL; lastcase := NIL; n := 0; + CheckSym(OPS.of); cases := NIL; lastcase := NIL; n := 0; LOOP - IF sym < OPM.bar THEN + IF sym < OPS.bar THEN CaseLabelList(lab, x^.typ^.form, n, tab); - CheckSym(OPM.colon); StatSeq(y); + CheckSym(OPS.colon); StatSeq(y); OPB.Construct(OPT.Ncasedo, lab, y); OPB.Link(cases, lastcase, lab) END ; - IF sym = OPM.bar THEN OPS.Get(sym) ELSE EXIT END + IF sym = OPS.bar THEN OPS.Get(sym) ELSE EXIT END END ; IF n > 0 THEN low := tab[0].low; high := tab[n-1].high; IF high - low > OPM.MaxCaseRange THEN err(209) END ELSE low := 1; high := 0 END ; - e := sym = OPM.else; + e := sym = OPS.else; IF e THEN OPS.Get(sym); StatSeq(y) ELSE y := NIL; - OPM.Mark(-307, OPM.curpos); (* notice about no OPM.else symbol; -- noch *) + OPM.Mark(-307, OPM.curpos); (* notice about no OPS.else symbol; -- noch *) END ; OPB.Construct(OPT.Ncaselse, cases, y); OPB.Construct(OPT.Ncase, x, cases); cases^.conval := OPT.NewConst(); @@ -756,21 +756,21 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) BEGIN stat := NIL; last := NIL; LOOP x := NIL; - IF sym < OPM.ident THEN err(14); - REPEAT OPS.Get(sym) UNTIL sym >= OPM.ident + IF sym < OPS.ident THEN err(14); + REPEAT OPS.Get(sym) UNTIL sym >= OPS.ident END ; - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN qualident(id); x := OPB.NewLeaf(id); selector(x); - IF sym = OPM.becomes THEN + IF sym = OPS.becomes THEN OPS.Get(sym); Expression(y); OPB.Assign(x, y) - ELSIF sym = OPM.eql THEN - err(OPM.becomes); OPS.Get(sym); Expression(y); OPB.Assign(x, y) + ELSIF sym = OPS.eql THEN + err(OPS.becomes); OPS.Get(sym); Expression(y); OPB.Assign(x, y) ELSIF (x^.class = OPT.Nproc) & (x^.obj^.mode = OPT.SProc) THEN StandProcCall(x); IF (x # NIL) & (x^.typ # OPT.notyp) THEN err(55) END ELSE OPB.PrepCall(x, fpar); - IF sym = OPM.lparen THEN - OPS.Get(sym); ActualParameters(apar, fpar); CheckSym(OPM.rparen) + IF sym = OPS.lparen THEN + OPS.Get(sym); ActualParameters(apar, fpar); CheckSym(OPS.rparen) ELSE apar := NIL; IF fpar # NIL THEN err(65) END END ; @@ -779,33 +779,33 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) IF level > 0 THEN OPT.topScope^.link^.leaf := FALSE END END ; pos := OPM.errpos - ELSIF sym = OPM.if THEN - OPS.Get(sym); Expression(x); CheckBool(x); CheckSym(OPM.then); StatSeq(y); + ELSIF sym = OPS.if THEN + OPS.Get(sym); Expression(x); CheckBool(x); CheckSym(OPS.then); StatSeq(y); OPB.Construct(OPT.Nif, x, y); SetPos(x); lastif := x; - WHILE sym = OPM.elsif DO - OPS.Get(sym); Expression(y); CheckBool(y); CheckSym(OPM.then); StatSeq(z); + WHILE sym = OPS.elsif DO + OPS.Get(sym); Expression(y); CheckBool(y); CheckSym(OPS.then); StatSeq(z); OPB.Construct(OPT.Nif, y, z); SetPos(y); OPB.Link(x, lastif, y) END ; - IF sym = OPM.else THEN OPS.Get(sym); StatSeq(y) ELSE y := NIL END ; - OPB.Construct(OPT.Nifelse, x, y); CheckSym(OPM.end); OPB.OptIf(x); pos := OPM.errpos - ELSIF sym = OPM.case THEN - OPS.Get(sym); CasePart(x); CheckSym(OPM.end) - ELSIF sym = OPM.while THEN - OPS.Get(sym); Expression(x); CheckBool(x); CheckSym(OPM.do); StatSeq(y); - OPB.Construct(OPT.Nwhile, x, y); CheckSym(OPM.end) - ELSIF sym = OPM.repeat THEN + IF sym = OPS.else THEN OPS.Get(sym); StatSeq(y) ELSE y := NIL END ; + OPB.Construct(OPT.Nifelse, x, y); CheckSym(OPS.end); OPB.OptIf(x); pos := OPM.errpos + ELSIF sym = OPS.case THEN + OPS.Get(sym); CasePart(x); CheckSym(OPS.end) + ELSIF sym = OPS.while THEN + OPS.Get(sym); Expression(x); CheckBool(x); CheckSym(OPS.do); StatSeq(y); + OPB.Construct(OPT.Nwhile, x, y); CheckSym(OPS.end) + ELSIF sym = OPS.repeat THEN OPS.Get(sym); StatSeq(x); - IF sym = OPM.until THEN OPS.Get(sym); Expression(y); CheckBool(y) - ELSE err(OPM.until) + IF sym = OPS.until THEN OPS.Get(sym); Expression(y); CheckBool(y) + ELSE err(OPS.until) END ; OPB.Construct(OPT.Nrepeat, x, y) - ELSIF sym = OPM.for THEN + ELSIF sym = OPS.for THEN OPS.Get(sym); - IF sym = OPM.ident THEN qualident(id); + IF sym = OPS.ident THEN qualident(id); IF ~(id^.typ^.form IN OPT.intSet) THEN err(68) END ; - CheckSym(OPM.becomes); Expression(y); pos := OPM.errpos; + CheckSym(OPS.becomes); Expression(y); pos := OPM.errpos; x := OPB.NewLeaf(id); OPB.Assign(x, y); SetPos(x); - CheckSym(OPM.to); Expression(y); pos := OPM.errpos; + CheckSym(OPS.to); Expression(y); pos := OPM.errpos; IF y^.class # OPT.Nconst THEN name := "@@"; OPT.Insert(name, t); t^.name := "@for"; (* avoid err 1 *) t^.mode := OPT.Var; t^.typ := x^.left^.typ; @@ -820,35 +820,35 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) ELSIF (y^.typ^.form < OPT.SInt) OR (y^.typ^.form > x^.left^.typ^.form) THEN err(113) END ; OPB.Link(stat, last, x); - IF sym = OPM.by THEN OPS.Get(sym); ConstExpression(z) ELSE z := OPB.NewIntConst(1) END ; + IF sym = OPS.by THEN OPS.Get(sym); ConstExpression(z) ELSE z := OPB.NewIntConst(1) END ; pos := OPM.errpos; x := OPB.NewLeaf(id); - IF z^.conval^.intval > 0 THEN OPB.Op(OPM.leq, x, y) - ELSIF z^.conval^.intval < 0 THEN OPB.Op(OPM.geq, x, y) - ELSE err(63); OPB.Op(OPM.geq, x, y) + IF z^.conval^.intval > 0 THEN OPB.Op(OPS.leq, x, y) + ELSIF z^.conval^.intval < 0 THEN OPB.Op(OPS.geq, x, y) + ELSE err(63); OPB.Op(OPS.geq, x, y) END ; - CheckSym(OPM.do); StatSeq(s); + CheckSym(OPS.do); StatSeq(s); y := OPB.NewLeaf(id); OPB.StPar1(y, z, OPT.incfn); SetPos(y); IF s = NIL THEN s := y ELSE z := s; WHILE z^.link # NIL DO z := z^.link END ; z^.link := y END ; - CheckSym(OPM.end); OPB.Construct(OPT.Nwhile, x, s) - ELSE err(OPM.ident) + CheckSym(OPS.end); OPB.Construct(OPT.Nwhile, x, s) + ELSE err(OPS.ident) END - ELSIF sym = OPM.loop THEN + ELSIF sym = OPS.loop THEN OPS.Get(sym); INC(LoopLevel); StatSeq(x); DEC(LoopLevel); - OPB.Construct(OPT.Nloop, x, NIL); CheckSym(OPM.end); pos := OPM.errpos - ELSIF sym = OPM.with THEN + OPB.Construct(OPT.Nloop, x, NIL); CheckSym(OPS.end); pos := OPM.errpos + ELSIF sym = OPS.with THEN OPS.Get(sym); idtyp := NIL; x := NIL; LOOP - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN qualident(id); y := OPB.NewLeaf(id); IF (id # NIL) & (id^.typ^.form = OPT.Pointer) & ((id^.mode = OPT.VarPar) OR ~id^.leaf) THEN err(245) (* jt: do not allow WITH on non-local pointers *) END ; - CheckSym(OPM.colon); - IF sym = OPM.ident THEN qualident(t); + CheckSym(OPS.colon); + IF sym = OPS.ident THEN qualident(t); IF t^.mode = OPT.Typ THEN IF id # NIL THEN idtyp := id^.typ; OPB.TypTest(y, t, FALSE); id^.typ := t^.typ @@ -856,34 +856,34 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) END ELSE err(52) END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - pos := OPM.errpos; CheckSym(OPM.do); StatSeq(s); OPB.Construct(OPT.Nif, y, s); SetPos(y); + pos := OPM.errpos; CheckSym(OPS.do); StatSeq(s); OPB.Construct(OPT.Nif, y, s); SetPos(y); IF idtyp # NIL THEN id^.typ := idtyp; idtyp := NIL END ; IF x = NIL THEN x := y; lastif := x ELSE OPB.Link(x, lastif, y) END ; - IF sym = OPM.bar THEN OPS.Get(sym) ELSE EXIT END + IF sym = OPS.bar THEN OPS.Get(sym) ELSE EXIT END END; - e := sym = OPM.else; + e := sym = OPS.else; IF e THEN OPS.Get(sym); StatSeq(s) ELSE s := NIL END ; - OPB.Construct(OPT.Nwith, x, s); CheckSym(OPM.end); + OPB.Construct(OPT.Nwith, x, s); CheckSym(OPS.end); IF e THEN x^.subcl := 1 END - ELSIF sym = OPM.exit THEN + ELSIF sym = OPS.exit THEN OPS.Get(sym); IF LoopLevel = 0 THEN err(46) END ; OPB.Construct(OPT.Nexit, x, NIL); pos := OPM.errpos - ELSIF sym = OPM.return THEN OPS.Get(sym); - IF sym < OPM.semicolon THEN Expression(x) END ; + ELSIF sym = OPS.return THEN OPS.Get(sym); + IF sym < OPS.semicolon THEN Expression(x) END ; IF level > 0 THEN OPB.Return(x, OPT.topScope^.link) ELSE (* not standard Oberon *) OPB.Return(x, NIL) END ; pos := OPM.errpos END ; IF x # NIL THEN SetPos(x); OPB.Link(stat, last, x) END ; - IF sym = OPM.semicolon THEN OPS.Get(sym) - ELSIF (sym <= OPM.ident) OR (OPM.if <= sym) & (sym <= OPM.return) THEN err(OPM.semicolon) + IF sym = OPS.semicolon THEN OPS.Get(sym) + ELSIF (sym <= OPS.ident) OR (OPS.if <= sym) & (sym <= OPS.return) THEN err(OPS.semicolon) ELSE EXIT END END @@ -897,31 +897,31 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) BEGIN first := NIL; last := NIL; nofFwdPtr := 0; LOOP - IF sym = OPM.const THEN + IF sym = OPS.const THEN OPS.Get(sym); - WHILE sym = OPM.ident DO + WHILE sym = OPS.ident DO OPT.Insert(OPS.name, obj); CheckMark(obj^.vis); obj^.typ := OPT.sinttyp; obj^.mode := OPT.Var; (* OPT.Var to avoid recursive definition *) - IF sym = OPM.eql THEN + IF sym = OPS.eql THEN OPS.Get(sym); ConstExpression(x) - ELSIF sym = OPM.becomes THEN - err(OPM.eql); OPS.Get(sym); ConstExpression(x) - ELSE err(OPM.eql); x := OPB.NewIntConst(1) + ELSIF sym = OPS.becomes THEN + err(OPS.eql); OPS.Get(sym); ConstExpression(x) + ELSE err(OPS.eql); x := OPB.NewIntConst(1) END ; obj^.mode := OPT.Con; obj^.typ := x^.typ; obj^.conval := x^.conval; (* ConstDesc ist not copied *) - CheckSym(OPM.semicolon) + CheckSym(OPS.semicolon) END END ; - IF sym = OPM.type THEN + IF sym = OPS.type THEN OPS.Get(sym); - WHILE sym = OPM.ident DO + WHILE sym = OPS.ident DO OPT.Insert(OPS.name, obj); obj^.mode := OPT.Typ; obj^.typ := OPT.undftyp; CheckMark(obj^.vis); - IF sym = OPM.eql THEN + IF sym = OPS.eql THEN OPS.Get(sym); TypeDecl(obj^.typ, obj^.typ) - ELSIF (sym = OPM.becomes) OR (sym = OPM.colon) THEN - err(OPM.eql); OPS.Get(sym); TypeDecl(obj^.typ, obj^.typ) - ELSE err(OPM.eql) + ELSIF (sym = OPS.becomes) OR (sym = OPS.colon) THEN + err(OPS.eql); OPS.Get(sym); TypeDecl(obj^.typ, obj^.typ) + ELSE err(OPS.eql) END ; IF obj^.typ^.strobj = NIL THEN obj^.typ^.strobj := obj END ; IF obj^.typ^.comp IN {OPT.Record, OPT.Array, OPT.DynArr} THEN @@ -930,34 +930,34 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) IF typ^.link^.name = obj^.name THEN typ^.BaseTyp := obj^.typ; typ^.link^.name := "" END END END ; - CheckSym(OPM.semicolon) + CheckSym(OPS.semicolon) END END ; - IF sym = OPM.var THEN + IF sym = OPS.var THEN OPS.Get(sym); - WHILE sym = OPM.ident DO + WHILE sym = OPS.ident DO LOOP - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN OPT.Insert(OPS.name, obj); CheckMark(obj^.vis); obj^.mode := OPT.Var; obj^.link := NIL; obj^.leaf := obj^.vis = OPT.internal; obj^.typ := OPT.undftyp; IF first = NIL THEN first := obj END ; IF last = NIL THEN OPT.topScope^.scope := obj ELSE last^.link := obj END ; last := obj - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF sym = OPM.ident THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF sym = OPS.ident THEN err(OPS.comma) ELSE EXIT END END ; - CheckSym(OPM.colon); Type(typ, OPT.notyp); + CheckSym(OPS.colon); Type(typ, OPT.notyp); typ^.pvused := TRUE; IF typ^.comp = OPT.DynArr THEN typ := OPT.undftyp; err(88) END ; WHILE first # NIL DO first^.typ := typ; first := first^.link END ; - CheckSym(OPM.semicolon) + CheckSym(OPS.semicolon) END END ; - IF (sym < OPM.const) OR (sym > OPM.var) THEN EXIT END ; + IF (sym < OPS.const) OR (sym > OPS.var) THEN EXIT END ; END ; i := 0; WHILE i < nofFwdPtr DO @@ -967,21 +967,21 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) END ; OPT.topScope^.adr := OPM.errpos; procdec := NIL; lastdec := NIL; - WHILE sym = OPM.procedure DO + WHILE sym = OPS.procedure DO OPS.Get(sym); ProcedureDeclaration(x); IF x # NIL THEN IF lastdec = NIL THEN procdec := x ELSE lastdec^.link := x END ; lastdec := x END ; - CheckSym(OPM.semicolon) + CheckSym(OPS.semicolon) END ; - IF sym = OPM.begin THEN OPS.Get(sym); StatSeq(statseq) + IF sym = OPS.begin THEN OPS.Get(sym); StatSeq(statseq) ELSE statseq := NIL END ; IF (level = 0) & (TDinit # NIL) THEN lastTDinit^.link := statseq; statseq := TDinit END ; - CheckSym(OPM.end) + CheckSym(OPS.end) END Block; PROCEDURE Module*(VAR prog: OPT.Node; opt: SET); @@ -990,38 +990,38 @@ MODULE OPP; (* NW, RC 6.3.89 / 10.2.94 *) (* object model 4.12.93 *) c: LONGINT; done: BOOLEAN; BEGIN OPS.Init; LoopLevel := 0; level := 0; OPS.Get(sym); - IF sym = OPM.module THEN OPS.Get(sym) ELSE err(16) END ; - IF sym = OPM.ident THEN + IF sym = OPS.module THEN OPS.Get(sym) ELSE err(16) END ; + IF sym = OPS.ident THEN OPM.LogWStr("compiling "); OPM.LogWStr(OPS.name); OPM.LogW("."); - OPT.Init(OPS.name, opt); OPS.Get(sym); CheckSym(OPM.semicolon); - IF sym = OPM.import THEN OPS.Get(sym); + OPT.Init(OPS.name, opt); OPS.Get(sym); CheckSym(OPS.semicolon); + IF sym = OPS.import THEN OPS.Get(sym); LOOP - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN COPY(OPS.name, aliasName); COPY(aliasName, impName); OPS.Get(sym); - IF sym = OPM.becomes THEN OPS.Get(sym); - IF sym = OPM.ident THEN COPY(OPS.name, impName); OPS.Get(sym) ELSE err(OPM.ident) END + IF sym = OPS.becomes THEN OPS.Get(sym); + IF sym = OPS.ident THEN COPY(OPS.name, impName); OPS.Get(sym) ELSE err(OPS.ident) END END ; OPT.Import(aliasName, impName, done) - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - IF sym = OPM.comma THEN OPS.Get(sym) - ELSIF sym = OPM.ident THEN err(OPM.comma) + IF sym = OPS.comma THEN OPS.Get(sym) + ELSIF sym = OPS.ident THEN err(OPS.comma) ELSE EXIT END END ; - CheckSym(OPM.semicolon) + CheckSym(OPS.semicolon) END ; IF OPM.noerr THEN TDinit := NIL; lastTDinit := NIL; c := OPM.errpos; Block(procdec, statseq); OPB.Enter(procdec, statseq, NIL); prog := procdec; prog^.conval := OPT.NewConst(); prog^.conval^.intval := c; - IF sym = OPM.ident THEN + IF sym = OPS.ident THEN IF OPS.name # OPT.SelfName THEN err(4) END ; OPS.Get(sym) - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; - IF sym # OPM.period THEN err(OPM.period) END + IF sym # OPS.period THEN err(OPS.period) END END - ELSE err(OPM.ident) + ELSE err(OPS.ident) END ; TDinit := NIL; lastTDinit := NIL END Module; diff --git a/src/compiler/OPS.Mod b/src/compiler/OPS.Mod index 30625836..33b325d8 100644 --- a/src/compiler/OPS.Mod +++ b/src/compiler/OPS.Mod @@ -6,6 +6,43 @@ MODULE OPS; (* NW, RC 6.3.89 / 18.10.92 *) (* object model 3.6.92 *) MaxStrLen* = 256; MaxIdLen = 256; + + (* Symbols values (also used as op values): + | 0 1 2 3 4 + ---|-------------------------------------------------------- + 0 | null * / DIV MOD + 5 | & + - OR = + 10 | # < <= > >= + 15 | IN IS ^ . , + 20 | : .. ) ] } + 25 | OF THEN DO TO BY + 30 | ( [ { ~ := + 35 | number NIL string ident ; + 40 | | END ELSE ELSIF UNTIL + 45 | IF CASE WHILE REPEAT FOR + 50 | LOOP WITH EXIT RETURN ARRAY + 55 | RECORD POINTER BEGIN CONST TYPE + 60 | VAR PROCEDURE IMPORT MODULE eof + *) + + null* = 0; times* = 1; slash* = 2; div* = 3; mod* = 4; + and* = 5; plus* = 6; minus* = 7; or* = 8; eql* = 9; + neq* = 10; lss* = 11; leq* = 12; gtr* = 13; geq* = 14; + in* = 15; is* = 16; arrow* = 17; period* = 18; comma* = 19; + colon* = 20; upto* = 21; rparen* = 22; rbrak* = 23; rbrace* = 24; + of* = 25; then* = 26; do* = 27; to* = 28; by* = 29; + lparen* = 30; lbrak* = 31; lbrace* = 32; not* = 33; becomes* = 34; + number* = 35; nil* = 36; string* = 37; ident* = 38; semicolon* = 39; + bar* = 40; end* = 41; else* = 42; elsif* = 43; until* = 44; + if* = 45; case* = 46; while* = 47; repeat* = 48; for* = 49; + loop* = 50; with* = 51; exit* = 52; return* = 53; array* = 54; + record* = 55; pointer* = 56; begin* = 57; const* = 58; type* = 59; + var* = 60; procedure* = 61; import* = 62; module* = 63; eof* = 64; + + (* Symbol numtyp values *) + char* = 1; integer* = 2; real* = 3; longreal* = 4; + + TYPE Name* = ARRAY MaxIdLen OF CHAR; String* = ARRAY MaxStrLen OF CHAR; @@ -36,8 +73,8 @@ MODULE OPS; (* NW, RC 6.3.89 / 18.10.92 *) (* object model 3.6.92 *) END ; OPM.Get(ch); str[i] := 0X; intval := i + 1; IF intval = 2 THEN - sym := OPM.number; numtyp := 1; intval := ORD(str[0]) - ELSE sym := OPM.string + sym := number; numtyp := 1; intval := ORD(str[0]) + ELSE sym := string END END Str; @@ -48,7 +85,7 @@ MODULE OPS; (* NW, RC 6.3.89 / 18.10.92 *) (* object model 3.6.92 *) name[i] := ch; INC(i); OPM.Get(ch) UNTIL (ch < "0") OR ("9" < ch) & (CAP(ch) < "A") OR ("Z" < CAP(ch)) OR (i = MaxIdLen); IF i = MaxIdLen THEN err(240); DEC(i) END ; - name[i] := 0X; sym := OPM.ident + name[i] := 0X; sym := ident END Identifier; PROCEDURE Number; @@ -90,21 +127,21 @@ MODULE OPS; (* NW, RC 6.3.89 / 18.10.92 *) (* object model 3.6.92 *) ELSE EXIT END END; (* 0 <= n <= m <= i, 0 <= d <= i *) - IF d = 0 THEN (* OPM.integer *) + IF d = 0 THEN (* integer *) IF n = m THEN intval := 0; i := 0; - IF ch = "X" THEN (* character *) OPM.Get(ch); numtyp := OPM.char; + IF ch = "X" THEN (* character *) OPM.Get(ch); numtyp := char; IF n <= 2 THEN WHILE i < n DO intval := intval*10H + Ord(dig[i], TRUE); INC(i) END ELSE err(203) END - ELSIF ch = "H" THEN (* hexadecimal *) OPM.Get(ch); numtyp := OPM.integer; + ELSIF ch = "H" THEN (* hexadecimal *) OPM.Get(ch); numtyp := integer; IF MAX(LONGINT) > 2147483647 THEN maxHdig := 16 ELSE maxHdig := 8 END; IF n <= maxHdig THEN IF (n = maxHdig) & (dig[0] > "7") THEN (* prevent overflow *) intval := -1 END; WHILE i < n DO intval := intval*10H + Ord(dig[i], TRUE); INC(i) END ELSE err(203) END - ELSE (* decimal *) numtyp := OPM.integer; + ELSE (* decimal *) numtyp := integer; WHILE i < n DO d := Ord(dig[i], FALSE); INC(i); IF intval <= (MAX(LONGINT) - d) DIV 10 THEN intval := intval*10 + d ELSE err(203) @@ -131,14 +168,14 @@ MODULE OPS; (* NW, RC 6.3.89 / 18.10.92 *) (* object model 3.6.92 *) END END; DEC(e, i-d-m); (* decimal point shift *) - IF expCh = "E" THEN numtyp := OPM.real; + IF expCh = "E" THEN numtyp := real; IF (1-OPM.MaxRExp < e) & (e <= OPM.MaxRExp) THEN IF e < 0 THEN realval := SHORT(f / Ten(-e)) ELSE realval := SHORT(f * Ten(e)) END ELSE err(203) END - ELSE numtyp := OPM.longreal; + ELSE numtyp := longreal; IF (1-OPM.MaxLExp < e) & (e <= OPM.MaxLExp) THEN IF e < 0 THEN lrlval := f / Ten(-e) ELSE lrlval := f * Ten(e) @@ -171,104 +208,104 @@ MODULE OPS; (* NW, RC 6.3.89 / 18.10.92 *) (* object model 3.6.92 *) BEGIN OPM.errpos := OPM.curpos-1; WHILE ch <= " " DO (*ignore control characters*) - IF ch = OPM.Eot THEN sym := OPM.eof; RETURN + IF ch = OPM.Eot THEN sym := eof; RETURN ELSE OPM.Get(ch) END END ; CASE ch OF (* ch > " " *) | 22X, 27X: Str(s) - | "#": s := OPM.neq; OPM.Get(ch) - | "&": s := OPM.and; OPM.Get(ch) + | "#": s := neq; OPM.Get(ch) + | "&": s := and; OPM.Get(ch) | "(": OPM.Get(ch); - IF ch = "*" THEN Comment; Get(s) ELSE s := OPM.lparen END - | ")": s := OPM.rparen; OPM.Get(ch) - | "*": s := OPM.times; OPM.Get(ch) - | "+": s := OPM.plus; OPM.Get(ch) - | ",": s := OPM.comma; OPM.Get(ch) - | "-": s := OPM.minus; OPM.Get(ch) + IF ch = "*" THEN Comment; Get(s) ELSE s := lparen END + | ")": s := rparen; OPM.Get(ch) + | "*": s := times; OPM.Get(ch) + | "+": s := plus; OPM.Get(ch) + | ",": s := comma; OPM.Get(ch) + | "-": s := minus; OPM.Get(ch) | ".": OPM.Get(ch); - IF ch = "." THEN OPM.Get(ch); s := OPM.upto ELSE s := OPM.period END - | "/": s := OPM.slash; OPM.Get(ch) - | "0".."9": Number; s := OPM.number + IF ch = "." THEN OPM.Get(ch); s := upto ELSE s := period END + | "/": s := slash; OPM.Get(ch) + | "0".."9": Number; s := number | ":": OPM.Get(ch); - IF ch = "=" THEN OPM.Get(ch); s := OPM.becomes ELSE s := OPM.colon END - | ";": s := OPM.semicolon; OPM.Get(ch) + IF ch = "=" THEN OPM.Get(ch); s := becomes ELSE s := colon END + | ";": s := semicolon; OPM.Get(ch) | "<": OPM.Get(ch); - IF ch = "=" THEN OPM.Get(ch); s := OPM.leq ELSE s := OPM.lss END - | "=": s := OPM.eql; OPM.Get(ch) + IF ch = "=" THEN OPM.Get(ch); s := leq ELSE s := lss END + | "=": s := eql; OPM.Get(ch) | ">": OPM.Get(ch); - IF ch = "=" THEN OPM.Get(ch); s := OPM.geq ELSE s := OPM.gtr END - | "A": Identifier(s); IF name = "ARRAY" THEN s := OPM.array END + IF ch = "=" THEN OPM.Get(ch); s := geq ELSE s := gtr END + | "A": Identifier(s); IF name = "ARRAY" THEN s := array END | "B": Identifier(s); - IF name = "BEGIN" THEN s := OPM.begin - ELSIF name = "BY" THEN s := OPM.by + IF name = "BEGIN" THEN s := begin + ELSIF name = "BY" THEN s := by END | "C": Identifier(s); - IF name = "CASE" THEN s := OPM.case - ELSIF name = "CONST" THEN s := OPM.const + IF name = "CASE" THEN s := case + ELSIF name = "CONST" THEN s := const END | "D": Identifier(s); - IF name = "DO" THEN s := OPM.do - ELSIF name = "DIV" THEN s := OPM.div + IF name = "DO" THEN s := do + ELSIF name = "DIV" THEN s := div END | "E": Identifier(s); - IF name = "END" THEN s := OPM.end - ELSIF name = "ELSE" THEN s := OPM.else - ELSIF name = "ELSIF" THEN s := OPM.elsif - ELSIF name = "EXIT" THEN s := OPM.exit + IF name = "END" THEN s := end + ELSIF name = "ELSE" THEN s := else + ELSIF name = "ELSIF" THEN s := elsif + ELSIF name = "EXIT" THEN s := exit END - | "F": Identifier(s); IF name = "FOR" THEN s := OPM.for END + | "F": Identifier(s); IF name = "FOR" THEN s := for END | "I": Identifier(s); - IF name = "IF" THEN s := OPM.if - ELSIF name = "IN" THEN s := OPM.in - ELSIF name = "IS" THEN s := OPM.is - ELSIF name = "IMPORT" THEN s := OPM.import + IF name = "IF" THEN s := if + ELSIF name = "IN" THEN s := in + ELSIF name = "IS" THEN s := is + ELSIF name = "IMPORT" THEN s := import END - | "L": Identifier(s); IF name = "LOOP" THEN s := OPM.loop END + | "L": Identifier(s); IF name = "LOOP" THEN s := loop END | "M": Identifier(s); - IF name = "MOD" THEN s := OPM.mod - ELSIF name = "MODULE" THEN s := OPM.module + IF name = "MOD" THEN s := mod + ELSIF name = "MODULE" THEN s := module END - | "N": Identifier(s); IF name = "NIL" THEN s := OPM.nil END + | "N": Identifier(s); IF name = "NIL" THEN s := nil END | "O": Identifier(s); - IF name = "OR" THEN s := OPM.or - ELSIF name = "OF" THEN s := OPM.of + IF name = "OR" THEN s := or + ELSIF name = "OF" THEN s := of END | "P": Identifier(s); - IF name = "PROCEDURE" THEN s := OPM.procedure - ELSIF name = "POINTER" THEN s := OPM.pointer + IF name = "PROCEDURE" THEN s := procedure + ELSIF name = "POINTER" THEN s := pointer END | "R": Identifier(s); - IF name = "RECORD" THEN s := OPM.record - ELSIF name = "REPEAT" THEN s := OPM.repeat - ELSIF name = "RETURN" THEN s := OPM.return + IF name = "RECORD" THEN s := record + ELSIF name = "REPEAT" THEN s := repeat + ELSIF name = "RETURN" THEN s := return END | "T": Identifier(s); - IF name = "THEN" THEN s := OPM.then - ELSIF name = "TO" THEN s := OPM.to - ELSIF name = "TYPE" THEN s := OPM.type + IF name = "THEN" THEN s := then + ELSIF name = "TO" THEN s := to + ELSIF name = "TYPE" THEN s := type END - | "U": Identifier(s); IF name = "UNTIL" THEN s := OPM.until END - | "V": Identifier(s); IF name = "VAR" THEN s := OPM.var END + | "U": Identifier(s); IF name = "UNTIL" THEN s := until END + | "V": Identifier(s); IF name = "VAR" THEN s := var END | "W": Identifier(s); - IF name = "WHILE" THEN s := OPM.while - ELSIF name = "WITH" THEN s := OPM.with + IF name = "WHILE" THEN s := while + ELSIF name = "WITH" THEN s := with END | "G".."H", "J".."K", "Q", "S", "X".."Z": Identifier(s) - | "[": s := OPM.lbrak; OPM.Get(ch) - | "]": s := OPM.rbrak; OPM.Get(ch) - | "^": s := OPM.arrow; OPM.Get(ch) + | "[": s := lbrak; OPM.Get(ch) + | "]": s := rbrak; OPM.Get(ch) + | "^": s := arrow; OPM.Get(ch) | "a".."z": Identifier(s) - | "{": s := OPM.lbrace; OPM.Get(ch) - | "|": s := OPM.bar; OPM.Get(ch) - | "}": s := OPM.rbrace; OPM.Get(ch) - | "~": s := OPM.not; OPM.Get(ch) - | 7FX: s := OPM.upto; OPM.Get(ch) - ELSE s := OPM.null; OPM.Get(ch) + | "{": s := lbrace; OPM.Get(ch) + | "|": s := bar; OPM.Get(ch) + | "}": s := rbrace; OPM.Get(ch) + | "~": s := not; OPM.Get(ch) + | 7FX: s := upto; OPM.Get(ch) + ELSE s := null; OPM.Get(ch) END ; sym := s END Get; diff --git a/src/compiler/OPT.Mod b/src/compiler/OPT.Mod index 8e550c03..fb77b0ea 100644 --- a/src/compiler/OPT.Mod +++ b/src/compiler/OPT.Mod @@ -138,7 +138,8 @@ CONST (* Note: some object.adr function numbers and some symbol types are also are used as Node.subcl function ids *) - + eql* = OPS.eql; neq* = OPS.neq; lss* = OPS.lss; + leq* = OPS.leq; gtr* = OPS.gtr; geq* = OPS.geq; diff --git a/src/compiler/OPV.Mod b/src/compiler/OPV.Mod index 7e29244e..b49ac12a 100644 --- a/src/compiler/OPV.Mod +++ b/src/compiler/OPV.Mod @@ -1,6 +1,6 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 - 26.7.2002 jt bug fix OPM.in Len: wrong result if called for fixed OPT.Array + 26.7.2002 jt bug fix OPS.in Len: wrong result if called for fixed OPT.Array 31.1.2007 jt synchronized with BlackBox version, in particular: various promotion rules changed (long) => (LONGINT), xxxL avoided *) @@ -227,27 +227,27 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 | OPT.Nvarpar: IF comp IN {OPT.Array, OPT.DynArr} THEN RETURN 10 ELSE RETURN 9 END (* arrays don't need deref *) | OPT.Nderef: RETURN 9 | OPT.Nmop: CASE subclass OF - | OPM.not, OPM.minus, OPT.adr, OPT.val, OPT.conv: RETURN 9 - | OPM.is, OPT.abs, OPT.cap, OPT.odd, OPT.cc: RETURN 10 + | OPS.not, OPS.minus, OPT.adr, OPT.val, OPT.conv: RETURN 9 + | OPS.is, OPT.abs, OPT.cap, OPT.odd, OPT.cc: RETURN 10 ELSE OPM.LogWStr("unhandled case in OPV.Precedence OPT.Nmop, subclass = "); OPM.LogWNum(subclass, 0); OPM.LogWLn; END | OPT.Ndop: CASE subclass OF - | OPM.times: IF form = OPT.Set THEN RETURN 4 ELSE RETURN 8 END - | OPM.slash: IF form = OPT.Set THEN RETURN 3 ELSE RETURN 8 END - | OPM.div, - OPM.mod: RETURN 10 (* div/mod are replaced by functions *) - | OPM.plus: IF form = OPT.Set THEN RETURN 2 ELSE RETURN 7 END - | OPM.minus: IF form = OPT.Set THEN RETURN 4 ELSE RETURN 7 END - | OPM.lss, - OPM.leq, - OPM.gtr, - OPM.geq: RETURN 6 - | OPM.eql, - OPM.neq: RETURN 5 - | OPM.and: RETURN 1 - | OPM.or: RETURN 0 + | OPS.times: IF form = OPT.Set THEN RETURN 4 ELSE RETURN 8 END + | OPS.slash: IF form = OPT.Set THEN RETURN 3 ELSE RETURN 8 END + | OPS.div, + OPS.mod: RETURN 10 (* div/mod are replaced by functions *) + | OPS.plus: IF form = OPT.Set THEN RETURN 2 ELSE RETURN 7 END + | OPS.minus: IF form = OPT.Set THEN RETURN 4 ELSE RETURN 7 END + | OPS.lss, + OPS.leq, + OPS.gtr, + OPS.geq: RETURN 6 + | OPS.eql, + OPS.neq: RETURN 5 + | OPS.and: RETURN 1 + | OPS.or: RETURN 0 | OPT.len, - OPM.in, + OPS.in, OPT.ash, OPT.msk, OPT.bit, @@ -534,10 +534,10 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 OPM.Write(CloseParen) | OPT.Nmop: CASE subclass OF - | OPM.not: OPM.Write("!"); expr(l, exprPrec) - | OPM.minus: IF form = OPT.Set THEN OPM.Write("~") ELSE OPM.Write("-") END; + | OPS.not: OPM.Write("!"); expr(l, exprPrec) + | OPS.minus: IF form = OPT.Set THEN OPM.Write("~") ELSE OPM.Write("-") END; expr(l, exprPrec) - | OPM.is: typ := n^.obj^.typ; + | OPS.is: typ := n^.obj^.typ; IF l^.typ^.comp = OPT.Record THEN OPM.WriteString(IsFunc); OPC.TypeOf(l^.obj) ELSE OPM.WriteString(IsPFunc); expr(l, MinPrec); typ := typ^.BaseTyp END ; @@ -581,15 +581,15 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 END | OPT.Ndop: CASE subclass OF | OPT.len: Len(l, r^.conval^.intval) - | OPM.in, + | OPS.in, OPT.ash, OPT.msk, OPT.bit, OPT.lsh, OPT.rot, - OPM.div, - OPM.mod: CASE subclass OF - | OPM.in: OPM.WriteString("__IN(") + OPS.div, + OPS.mod: CASE subclass OF + | OPS.in: OPM.WriteString("__IN(") | OPT.ash: IF r^.class = OPT.Nconst THEN IF r^.conval^.intval >= 0 THEN OPM.WriteString("__ASHL(") ELSE OPM.WriteString("__ASHR(") @@ -611,12 +611,12 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 END ELSE OPM.WriteString("__ROT(") END - | OPM.div: IF SideEffects(n) THEN + | OPS.div: IF SideEffects(n) THEN IF form < OPT.LInt THEN OPM.WriteString("(int)") END ; OPM.WriteString("__DIVF(") ELSE OPM.WriteString("__DIV(") END - | OPM.mod: IF form < OPT.LInt THEN OPM.WriteString("(int)") END ; + | OPS.mod: IF form < OPT.LInt THEN OPM.WriteString("(int)") END ; IF SideEffects(n) THEN OPM.WriteString("__MODF(") ELSE OPM.WriteString("__MOD(") END; @@ -630,8 +630,8 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 END ; IF subclass IN {OPT.lsh, OPT.rot} THEN OPM.WriteString(Comma); OPC.Ident(l^.typ^.strobj) END ; OPM.Write(CloseParen) - | OPM.eql - .. OPM.geq: IF l^.typ^.form IN {OPT.String, OPT.Comp} THEN + | OPS.eql + .. OPS.geq: IF l^.typ^.form IN {OPT.String, OPT.Comp} THEN OPM.WriteString("__STRCMP("); expr(l, MinPrec); OPM.WriteString(Comma); expr(r, MinPrec); OPM.Write(CloseParen); OPC.Cmp(subclass); OPM.Write("0") @@ -643,30 +643,30 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 END ; expr(r, exprPrec) END - ELSE IF (subclass = OPM.and) OR ((form = OPT.Set) & ((subclass = OPM.times) OR (subclass = OPM.minus))) THEN OPM.Write(OpenParen); END; (* to silence clang warnings; -- noch *) + ELSE IF (subclass = OPS.and) OR ((form = OPT.Set) & ((subclass = OPS.times) OR (subclass = OPS.minus))) THEN OPM.Write(OpenParen); END; (* to silence clang warnings; -- noch *) expr(l, exprPrec); CASE subclass OF - | OPM.times: IF form = OPT.Set THEN OPM.WriteString(" & ") + | OPS.times: IF form = OPT.Set THEN OPM.WriteString(" & ") ELSE OPM.WriteString(" * ") END - | OPM.slash: IF form = OPT.Set THEN OPM.WriteString(" ^ ") + | OPS.slash: IF form = OPT.Set THEN OPM.WriteString(" ^ ") ELSE OPM.WriteString(" / "); IF (r^.obj = NIL) OR (r^.obj^.typ^.form IN OPT.intSet) THEN OPM.Write(OpenParen); OPC.Ident(n^.typ^.strobj); OPM.Write(CloseParen) END END - | OPM.and: OPM.WriteString(" && ") - | OPM.plus: IF form = OPT.Set THEN OPM.WriteString(" | ") + | OPS.and: OPM.WriteString(" && ") + | OPS.plus: IF form = OPT.Set THEN OPM.WriteString(" | ") ELSE OPM.WriteString(" + ") END - | OPM.minus: IF form = OPT.Set THEN OPM.WriteString(" & ~") + | OPS.minus: IF form = OPT.Set THEN OPM.WriteString(" & ~") ELSE OPM.WriteString(" - ") END; - | OPM.or: OPM.WriteString(" || "); + | OPS.or: OPM.WriteString(" || "); ELSE OPM.LogWStr("unhandled case in OPV.expr, subclass = "); OPM.LogWNum(subclass, 0); OPM.LogWLn; END; expr(r, exprPrec); - IF (subclass = OPM.and) OR ((form = OPT.Set) & ((subclass = OPM.times) OR (subclass = OPM.minus))) THEN OPM.Write(CloseParen) END; (* to silence clang warnings, -- noch*) + IF (subclass = OPS.and) OR ((form = OPT.Set) & ((subclass = OPS.times) OR (subclass = OPS.minus))) THEN OPM.Write(CloseParen) END; (* to silence clang warnings, -- noch*) END | OPT.Ncall: IF (l^.obj # NIL) & (l^.obj^.mode = OPT.TProc) THEN IF l^.subcl = OPT.super THEN proc := SuperProc(n)