Browse Source

Transform internal error into error message for seg(procvar) with is not usable for some i8086 memory models

git-svn-id: trunk@38219 -
pierre 7 years ago
parent
commit
019a8b66dc
3 changed files with 432 additions and 432 deletions
  1. 1 1
      compiler/i8086/n8086inl.pas
  2. 3 2
      compiler/msgidx.inc
  3. 428 429
      compiler/msgtxt.inc

+ 1 - 1
compiler/i8086/n8086inl.pas

@@ -197,7 +197,7 @@ implementation
          if left.resultdef.typ=procvardef then
            begin
              if left.resultdef.size<>4 then
-               internalerror(2017121302);
+               CGMessage(type_e_seg_procvardef_wrong_memory_model);
              case left.location.loc of
                LOC_REGISTER,LOC_CREGISTER:
                  begin

+ 3 - 2
compiler/msgidx.inc

@@ -569,6 +569,7 @@ const
   type_e_procedure_must_be_far=04121;
   type_w_instance_abstract_class=04122;
   type_e_function_reference_kind=04123;
+  type_e_seg_procvardef_wrong_memory_model=04124;
   sym_e_id_not_found=05000;
   sym_f_internal_error_in_symtablestack=05001;
   sym_e_duplicate_id=05002;
@@ -1091,9 +1092,9 @@ const
   option_info=11024;
   option_help_pages=11025;
 
-  MsgTxtSize = 81040;
+  MsgTxtSize = 81122;
 
   MsgIdxMax : array[1..20] of longint=(
-    27,105,347,124,96,58,139,33,221,67,
+    27,105,347,125,96,58,139,33,221,67,
     61,20,30,1,1,1,1,1,1,1
   );

File diff suppressed because it is too large
+ 428 - 429
compiler/msgtxt.inc


Some files were not shown because too many files changed in this diff