From f829b4b6407fc7c0fa9b0e42da896db37b456aaa Mon Sep 17 00:00:00 2001 From: FellippeHeitor Date: Thu, 1 Sep 2016 23:37:37 -0300 Subject: [PATCH] Temporary remedy for confusing error messages after internal errors. Bringing back the old "Compiler error (check for syntax errors)" message. --- source/qb64.bas | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/source/qb64.bas b/source/qb64.bas index 012189a07..0249d92b6 100644 --- a/source/qb64.bas +++ b/source/qb64.bas @@ -1153,6 +1153,17 @@ END IF PRINT "Invalid IDE message": END ideerror: +IF INSTR(idemessage$, sp$) THEN + 'Something went wrong here, so let's give a generic error message to the user. + '(No error message should contain sp$ - that is, CHR$(13), when not in Debug mode) + idemessage$ = "Compiler error (check for syntax errors) (Reference:" + IF ERR THEN idemessage$ = idemessage$ + str2$(ERR) + "-" + IF _ERRORLINE THEN idemessage$ = idemessage$ + str2$(_ERRORLINE) + IF _INCLERRORLINE THEN idemessage$ = idemessage$ + "-" + _INCLERRORFILE$ + "-" + str2$(_INCLERRORLINE) + idemessage$ = idemessage$ + ")" + IF inclevel > 0 THEN idemessage$ = idemessage$ + incerror$ +END IF + sendc$ = CHR$(8) + idemessage$ + MKL$(ideerrorline) GOTO sendcommand @@ -12402,7 +12413,11 @@ IF Debug THEN PRINT #9, "ERL="; ERL IF idemode AND qberrorhappenedvalue >= 0 THEN 'real qb error occurred ideerrorline = linenumber - idemessage$ = "Compiler error (check for syntax errors) (Reference:" + str2$(ERR) + "-" + str2$(_ERRORLINE) + ")" + idemessage$ = "Compiler error (check for syntax errors) (Reference:" + IF ERR THEN idemessage$ = idemessage$ + str2$(ERR) + "-" + IF _ERRORLINE THEN idemessage$ = idemessage$ + str2$(_ERRORLINE) + IF _INCLERRORLINE THEN idemessage$ = idemessage$ + "-" + _INCLERRORFILE$ + "-" + str2$(_INCLERRORLINE) + idemessage$ = idemessage$ + ")" IF inclevel > 0 THEN idemessage$ = idemessage$ + incerror$ RESUME ideerror END IF