2
0
Эх сурвалжийг харах

FOB: Better error message when file is not found

Arthur Yefimov 3 жил өмнө
parent
commit
202c15c335
1 өөрчлөгдсөн 6 нэмэгдсэн , 3 устгасан
  1. 6 3
      src/Fob.Mod

+ 6 - 3
src/Fob.Mod

@@ -44,8 +44,11 @@ PROCEDURE BuildErrorCallback(fname: ARRAY OF CHAR; col, line, error: INTEGER;
     msg: ARRAY OF CHAR);
     msg: ARRAY OF CHAR);
 BEGIN
 BEGIN
   IF fname[0] # 0X THEN
   IF fname[0] # 0X THEN
-    Out.String(fname); Out.Char(':'); Out.Int(line, 0);
-    Out.Char(':'); Out.Int(col, 0); Out.String(': ')
+    Out.String(fname);
+    IF line >= 0 THEN
+      Out.Char(':'); Out.Int(line, 0); Out.Char(':'); Out.Int(col, 0)
+    END;
+    Out.String(': ')
   END;
   END;
   Out.String('error: '); Out.String(msg); Out.Ln
   Out.String('error: '); Out.String(msg); Out.Ln
 END BuildErrorCallback;
 END BuildErrorCallback;
@@ -84,7 +87,7 @@ BEGIN
     END
     END
   ELSE (*res = 400-file not found or 401-file contains wrong module name*)
   ELSE (*res = 400-file not found or 401-file contains wrong module name*)
     FoStrings.MakeErrorStr(res, s);
     FoStrings.MakeErrorStr(res, s);
-    BuildErrorCallback(errFname, 1, 1, 401, s)
+    BuildErrorCallback(errFname, -1, -1, 401, s)
   END;
   END;
   IF ~ok THEN Platform.ExitOS(1) END
   IF ~ok THEN Platform.ExitOS(1) END
 END Do;
 END Do;