From 073d3da6c76a1ad619cea1221474d46f1d8f570e Mon Sep 17 00:00:00 2001 From: DeaDDooMER Date: Sun, 28 Jul 2019 23:24:00 +0300 Subject: [PATCH] errors and warnings marked explicitly --- src/generic/Dev/Mod/CPC486.odc | Bin 87900 -> 87931 bytes src/generic/Dev/Mod/CPM.cp | 16 ++++++++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/generic/Dev/Mod/CPC486.odc b/src/generic/Dev/Mod/CPC486.odc index 0898cd23de4300d617709a2acf9ad63b941e4e00..b3e870d8c9619d6939d2f0247a6a8bfef79fac1c 100644 GIT binary patch delta 162 zcmcb!j`jCC)(Q2DKPEQBak_;uGH^05FxX9e?#lRLvM!@NXL<-D13yqGesd`!KNItj z66VS6% rl@u$4c)0rUa!$UcZakSo!*H?%5N81K3?M$CVc7gpWBW%9#%w(RB_c34 delta 164 zcmeypj`hwu)(Q2DHzzj4ajJ(gGH^05Fvw4Q?#g&_vM!@Nr$-1Q13ys6VRI=XKNEA? zRHn)8%89WW=GbfSPWII>m|O?M>w)-zhC#E0=5`59#$-JJmeDL^ diff --git a/src/generic/Dev/Mod/CPM.cp b/src/generic/Dev/Mod/CPM.cp index 38cfe53..97c6b3e 100644 --- a/src/generic/Dev/Mod/CPM.cp +++ b/src/generic/Dev/Mod/CPM.cp @@ -503,7 +503,7 @@ MODULE DevCPM; END; IF trap IN options THEN HALT(100) END; ELSIF (n <= -700) & (errors < maxErrors) THEN - errNo[errors] := -n; errPos[errors] := pos; INC(errors) + errNo[errors] := n; errPos[errors] := pos; INC(errors) END END Mark; @@ -514,7 +514,7 @@ MODULE DevCPM; PROCEDURE GetErrorMsg (err: INTEGER; OUT msg: ARRAY OF CHAR); BEGIN - CASE err OF + CASE ABS(err) OF | 0: msg := 'undeclared identifier' | 1: msg := 'multiply defined identifier' | 2: msg := 'illegal character in number' @@ -757,6 +757,15 @@ MODULE DevCPM; | 411: msg := 'no proofable return' | 412: msg := 'illegal constructor call' | 413: msg := 'missing constructor call' +(* COM-related + | 700: msg := '700' + | 701: msg := '701' + | 702: msg := '702' + | 703: msg := '703' +*) + | 777: msg := 'register not released' + | 778: msg := 'float register not released' + | 779: msg := 'float register overallocated' ELSE Strings.IntToString(err, msg) END END GetErrorMsg; @@ -791,6 +800,9 @@ MODULE DevCPM; Console.WriteChar(":"); Strings.IntToString(errPos[n], s); Console.WriteStr(s); Console.WriteStr(": "); + IF errNo[n] >= 0 THEN Console.WriteStr("error: ") + ELSE Console.WriteStr("warning: ") + END; GetErrorMsg(errNo[n], s); Console.WriteStr(s); Console.WriteLn; -- 2.29.2