Browse Source

* HandleError -> HandleErrorFrame to avoid problem in
assembler code in i386.inc
(call to overloaded function in assembler block !)

pierre 27 years ago
parent
commit
02a46a6547
3 changed files with 33 additions and 18 deletions
  1. 7 2
      rtl/i386/i386.inc
  2. 10 5
      rtl/inc/system.inc
  3. 16 11
      rtl/win32/syswin32.pp

+ 7 - 2
rtl/i386/i386.inc

@@ -688,7 +688,7 @@ begin
    begin
      l:=InOutRes;
      InOutRes:=0;
-     HandleError(l,get_frame);
+     HandleErrorFrame(l,get_frame);
    end;
   asm
         popal
@@ -699,7 +699,12 @@ end;
 
 {
   $Log$
-  Revision 1.36  1998-12-18 17:21:32  peter
+  Revision 1.37  1998-12-21 14:28:20  pierre
+    * HandleError -> HandleErrorFrame to avoid problem in
+      assembler code in i386.inc
+      (call to overloaded function in assembler block !)
+
+  Revision 1.36  1998/12/18 17:21:32  peter
     * fixed io-error handling
 
   Revision 1.35  1998/12/15 22:42:53  peter

+ 10 - 5
rtl/inc/system.inc

@@ -27,7 +27,7 @@
 {$i textrec.inc}
 
 Procedure HandleError (Errno : Longint); forward;
-Procedure HandleError (Errno : longint;frame : longint); forward;
+Procedure HandleErrorFrame (Errno : longint;frame : longint); forward;
 
 type
   FileFunc = Procedure(var t : TextRec);
@@ -277,7 +277,7 @@ end;
 
 procedure int_overflow;[public,alias:'FPC_OVERFLOW'];
 begin
-  HandleError(215,get_frame);
+  HandleErrorFrame(215,get_frame);
 end;
 
 
@@ -298,7 +298,7 @@ end;
                           Init / Exit / ExitProc
 *****************************************************************************}
 
-Procedure HandleError (Errno : longint;frame : longint);
+Procedure HandleErrorFrame (Errno : longint;frame : longint);
 {
   Procedure to handle internal errors, i.e. not user-invoked errors
   Internal function should ALWAYS call HandleError instead of RunError.
@@ -324,7 +324,7 @@ Procedure HandleError (Errno : longint);[public,alias : 'FPC_HANDLEERROR'];
   Internal function should ALWAYS call HandleError instead of RunError.
 }
 begin
-  HandleError(Errno,get_frame);
+  HandleErrorFrame(Errno,get_frame);
 end;
 
 
@@ -468,7 +468,12 @@ end;
 
 {
   $Log$
-  Revision 1.48  1998-12-18 17:21:33  peter
+  Revision 1.49  1998-12-21 14:28:21  pierre
+    * HandleError -> HandleErrorFrame to avoid problem in
+      assembler code in i386.inc
+      (call to overloaded function in assembler block !)
+
+  Revision 1.48  1998/12/18 17:21:33  peter
     * fixed io-error handling
 
   Revision 1.47  1998/12/15 22:43:03  peter

+ 16 - 11
rtl/win32/syswin32.pp

@@ -863,33 +863,33 @@ type pexception_record = ^exception_record;
        syswin32_i386_exception_handler:=ExceptionContinueSearch;
        case excep^.ExceptionRecord^.ExceptionCode of
          EXCEPTION_ACCESS_VIOLATION :
-           Handleerror(216,frame);
+           HandleErrorFrame(216,frame);
          { EXCEPTION_BREAKPOINT = $80000003;
          EXCEPTION_DATATYPE_MISALIGNMENT = $80000002;
          EXCEPTION_SINGLE_STEP = $80000004; }
          EXCEPTION_ARRAY_BOUNDS_EXCEEDED :
-           Handleerror(201,frame);
+           HandleErrorFrame(201,frame);
          { EXCEPTION_FLT_DENORMAL_OPERAND = $c000008d; }
          EXCEPTION_FLT_DIVIDE_BY_ZERO :
-           Handleerror(200,frame);
+           HandleErrorFrame(200,frame);
          {EXCEPTION_FLT_INEXACT_RESULT = $c000008f;
          EXCEPTION_FLT_INVALID_OPERATION = $c0000090;}
          EXCEPTION_FLT_OVERFLOW :
-           Handleerror(205,frame);
+           HandleErrorFrame(205,frame);
          EXCEPTION_FLT_STACK_CHECK :
-           Handleerror(207,frame);
+           HandleErrorFrame(207,frame);
          { EXCEPTION_FLT_UNDERFLOW :
-           Handleerror(206,frame); should be accepted as zero !! }
+           HandleErrorFrame(206,frame); should be accepted as zero !! }
          EXCEPTION_INT_DIVIDE_BY_ZERO :
-           Handleerror(200,frame);
+           HandleErrorFrame(200,frame);
          EXCEPTION_INT_OVERFLOW :
-           Handleerror(215,frame);
+           HandleErrorFrame(215,frame);
          {EXCEPTION_INVALID_HANDLE = $c0000008;
          EXCEPTION_PRIV_INSTRUCTION = $c0000096;
          EXCEPTION_NONCONTINUABLE_EXCEPTION = $c0000025;
          EXCEPTION_NONCONTINUABLE = $1;}
          EXCEPTION_STACK_OVERFLOW :
-           Handleerror(202,frame);
+           HandleErrorFrame(202,frame);
          {EXCEPTION_INVALID_DISPOSITION = $c0000026;}
          end;
     end;
@@ -951,7 +951,12 @@ end.
 
 {
   $Log$
-  Revision 1.29  1998-12-15 22:43:14  peter
+  Revision 1.30  1998-12-21 14:28:23  pierre
+    * HandleError -> HandleErrorFrame to avoid problem in
+      assembler code in i386.inc
+      (call to overloaded function in assembler block !)
+
+  Revision 1.29  1998/12/15 22:43:14  peter
     * removed temp symbols
 
   Revision 1.28  1998/12/09 17:57:33  pierre
@@ -960,7 +965,7 @@ end.
   Revision 1.27  1998/12/01 14:00:08  pierre
     + added conversion from exceptions into run time error
       (only if syswin32 compiled with -ddebug for now !)
-    * added HandleError(errno,frame)
+    * added HandleErrorFrame(errno,frame)
       where you specify the frame
       needed for win32 exception handling