diff --git a/compiler/ag386int.pas b/compiler/ag386int.pas index e6bfdf34a3..48a276b556 100644 --- a/compiler/ag386int.pas +++ b/compiler/ag386int.pas @@ -20,6 +20,9 @@ **************************************************************************** } +{$ifdef TP} + {$N+,E+} +{$endif} unit ag386int; interface @@ -481,7 +484,7 @@ ait_labeled_instruction : AsmWriteLn(#9#9+int_op2str[pai_labeled(hp)^._operator] prefix:= ''; if pai386(hp)^.op1t<>top_none then begin - if pai386(hp)^._operator in [A_CALL] then + if pai386(hp)^._operator=A_CALL then begin { with tasm call near ptr [edi+12] does not work but call near [edi+12] works ?? (PM) @@ -592,7 +595,10 @@ ait_stab_function_name : ; end. { $Log$ - Revision 1.21 1998-11-30 09:42:55 pierre + Revision 1.22 1998-12-01 11:19:38 peter + * fixed range problem with in [tasmop] + + Revision 1.21 1998/11/30 09:42:55 pierre * some range check bugs fixed (still not working !) + added DLL writing support for win32 (also accepts variables) + TempAnsi for code that could be used for Temporary ansi strings diff --git a/compiler/ag386nsm.pas b/compiler/ag386nsm.pas index efcfc1a692..a8ac54a83a 100644 --- a/compiler/ag386nsm.pas +++ b/compiler/ag386nsm.pas @@ -21,9 +21,8 @@ **************************************************************************** } -{ R- Necessary for the in [] } {$ifdef TP} - {$N+,E+,R-} + {$N+,E+} {$endif} unit ag386nsm; @@ -285,6 +284,7 @@ unit ag386nsm; counter, lines, i,j,l : longint; + op : tasmop; consttyp : tait; found, quoted : boolean; @@ -437,8 +437,10 @@ unit ag386nsm; end; ait_labeled_instruction : begin - if not (pai_labeled(hp)^._operator in [A_JMP,A_LOOP,A_LOOPZ,A_LOOPE, - A_LOOPNZ,A_LOOPNE,A_JCXZ,A_JECXZ]) then + op:=pai_labeled(hp)^._operator; + if not((op=A_JMP) or (op=A_LOOP) or (op=A_LOOPZ) or + (op=A_LOOPE) or (op=A_LOOPNZ) or (op=A_LOOPNE) or + (op=A_JCXZ) or (op=A_JECXZ)) then AsmWriteLn(#9#9+int_op2str[pai_labeled(hp)^._operator]+#9+'near '+lab2str(pai_labeled(hp)^.lab)) else AsmWriteLn(#9#9+int_op2str[pai_labeled(hp)^._operator]+#9+lab2str(pai_labeled(hp)^.lab)); @@ -486,7 +488,7 @@ ait_labeled_instruction : pai386(hp)^._operator:=A_FSTSW; if pai386(hp)^.op1t<>top_none then begin - if pai386(hp)^._operator in [A_CALL] then + if pai386(hp)^._operator=A_CALL then s:=getopstr_jmp(pai386(hp)^.op1t,pai386(hp)^.op1) else begin @@ -582,7 +584,10 @@ ait_stab_function_name : ; end. { $Log$ - Revision 1.14 1998-11-30 09:42:56 pierre + Revision 1.15 1998-12-01 11:19:39 peter + * fixed range problem with in [tasmop] + + Revision 1.14 1998/11/30 09:42:56 pierre * some range check bugs fixed (still not working !) + added DLL writing support for win32 (also accepts variables) + TempAnsi for code that could be used for Temporary ansi strings