Quellcode durchsuchen

* far pointer fix in taddrnode.pass_typecheck

git-svn-id: trunk@24857 -
nickysn vor 12 Jahren
Ursprung
Commit
c9096ef806
1 geänderte Dateien mit 7 neuen und 0 gelöschten Zeilen
  1. 7 0
      compiler/nmem.pas

+ 7 - 0
compiler/nmem.pas

@@ -526,7 +526,14 @@ implementation
               begin
               begin
                 if tabstractprocdef(left.resultdef).is_addressonly then
                 if tabstractprocdef(left.resultdef).is_addressonly then
                   begin
                   begin
+{$ifdef i8086}
+                    if po_far in tabstractprocdef(left.resultdef).procoptions then
+                      result:=ctypeconvnode.create_internal(left,voidfarpointertype)
+                    else
+                      result:=ctypeconvnode.create_internal(left,voidnearpointertype);
+{$else i8086}
                     result:=ctypeconvnode.create_internal(left,voidpointertype);
                     result:=ctypeconvnode.create_internal(left,voidpointertype);
+{$endif i8086}
                     include(result.flags,nf_load_procvar);
                     include(result.flags,nf_load_procvar);
                     left:=nil;
                     left:=nil;
                   end
                   end