diff options
Diffstat (limited to 'compiler/pass_1.pas')
-rw-r--r-- | compiler/pass_1.pas | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/pass_1.pas b/compiler/pass_1.pas index 5f59984329..2ac00dbc43 100644 --- a/compiler/pass_1.pas +++ b/compiler/pass_1.pas @@ -62,6 +62,7 @@ implementation procedure typecheckpass_internal_loop(var p : tnode; out node_changed: boolean); var hp : tnode; + oldflags : tnodeflags; begin codegenerror:=false; repeat @@ -73,9 +74,13 @@ implementation if assigned(hp) then begin node_changed:=true; + oldflags:=p.flags; p.free; { switch to new node } p:=hp; + { transfer generic paramter flag } + if nf_generic_para in oldflags then + include(p.flags,nf_generic_para); end; until not assigned(hp) or assigned(hp.resultdef); |