diff options
author | jonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2010-08-02 21:55:27 +0000 |
---|---|---|
committer | jonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2010-08-02 21:55:27 +0000 |
commit | 3a578b3f88a4695f3004bcc03ec8943497a026a5 (patch) | |
tree | 3cd43bd4feca7e0bff0d0e9f137913d48e41685b | |
parent | d7cdbf58e9c8dcb710574f18d78264c08f651548 (diff) | |
download | fpc-nestedprocvars.tar.gz |
* fixed tests/test/tmacprocvar.pp with nested procvar support (both @PROCnestedprocvars
and PROC can apparently be used as procvars there)
git-svn-id: http://svn.freepascal.org/svn/fpc/branches/nestedprocvars@15693 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r-- | compiler/ncal.pas | 5 | ||||
-rw-r--r-- | compiler/ncnv.pas | 2 |
2 files changed, 3 insertions, 4 deletions
diff --git a/compiler/ncal.pas b/compiler/ncal.pas index f52baff477..7cc7fe74d2 100644 --- a/compiler/ncal.pas +++ b/compiler/ncal.pas @@ -679,9 +679,8 @@ implementation left:=ttypeconvnode(left).left; ttypeconvnode(hp).left:=nil; hp.free; - end - else - maybe_global_proc_to_nested(left,parasym.vardef); + end; + maybe_global_proc_to_nested(left,parasym.vardef); { Handle varargs and hidden paras directly, no typeconvs or } { pass_typechecking needed } diff --git a/compiler/ncnv.pas b/compiler/ncnv.pas index a76cac6189..5c710c86cf 100644 --- a/compiler/ncnv.pas +++ b/compiler/ncnv.pas @@ -686,7 +686,7 @@ implementation begin result:=false; if (m_nested_procvars in current_settings.modeswitches) and - ([m_tp_procvar,m_mac_procvar]*current_settings.modeswitches=[]) and + not(m_tp_procvar in current_settings.modeswitches) and (todef.typ=procvardef) and is_nested_pd(tprocvardef(todef)) and (fromnode.nodetype=typeconvn) and |