浏览代码

+ remove try ... finally statements if the finally block is empty

git-svn-id: trunk@48174 -
florian 4 年之前
父节点
当前提交
16f201292c
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      compiler/nflw.pas

+ 7 - 0
compiler/nflw.pas

@@ -2722,6 +2722,13 @@ implementation
            result:=right;
            right:=nil;
          end;
+       { if the finally block contains no code, we can kill
+         it and just return the try part }
+       if has_no_code(right) and not(assigned(third)) and not(implicitframe) then
+         begin
+           result:=left;
+           left:=nil;
+         end;
      end;