diff options
author | svenbarth <svenbarth@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2020-04-21 06:07:03 +0000 |
---|---|---|
committer | svenbarth <svenbarth@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2020-04-21 06:07:03 +0000 |
commit | f9fe25de07eef0b894496fa57436ac4740d7b5cd (patch) | |
tree | 1f7b8b73be9c2c7c2fb8e68157d3361b469d2663 | |
parent | ead32ef7438522e8ba2f9538d0ef8ea781580be4 (diff) | |
download | fpc-f9fe25de07eef0b894496fa57436ac4740d7b5cd.tar.gz |
* set implicitframe for copied tryfinally nodes as well
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@44956 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r-- | compiler/nflw.pas | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/nflw.pas b/compiler/nflw.pas index 3c18363c4d..9edc45599c 100644 --- a/compiler/nflw.pas +++ b/compiler/nflw.pas @@ -244,6 +244,7 @@ interface function pass_1 : tnode;override; function simplify(forinline:boolean): tnode;override; protected + function dogetcopy: tnode;override; procedure adjust_estimated_stack_size; virtual; end; ttryfinallynodeclass = class of ttryfinallynode; @@ -2599,6 +2600,13 @@ implementation end; + function ttryfinallynode.dogetcopy: tnode; + begin + result:=inherited dogetcopy; + ttryfinallynode(result).implicitframe:=implicitframe; + end; + + procedure ttryfinallynode.adjust_estimated_stack_size; begin inc(current_procinfo.estimatedtempsize,rec_jmp_buf.size); |