浏览代码

* also check for nf_assign_done_in_right flag after typechecking the right side

git-svn-id: trunk@39118 -
svenbarth 7 年之前
父节点
当前提交
85439a0fa0
共有 1 个文件被更改,包括 8 次插入0 次删除
  1. 8 0
      compiler/nld.pas

+ 8 - 0
compiler/nld.pas

@@ -596,6 +596,14 @@ implementation
         if codegenerror then
           exit;
 
+        { just in case the typecheckpass of right optimized something here }
+        if nf_assign_done_in_right in flags then
+          begin
+            result:=right;
+            right:=nil;
+            exit;
+          end;
+
         { tp procvar support, when we don't expect a procvar
           then we need to call the procvar }
         if (left.resultdef.typ<>procvardef) then