diff --git a/compiler/pdecsub.pas b/compiler/pdecsub.pas index 60e9d2aa4f..6267d85980 100644 --- a/compiler/pdecsub.pas +++ b/compiler/pdecsub.pas @@ -50,6 +50,8 @@ interface function proc_add_definition(var pd:tprocdef):boolean; + procedure import_implict_external(pd:tabstractprocdef); + procedure handle_calling_convention(pd:tabstractprocdef); procedure parse_parameter_dec(pd:tabstractprocdef); @@ -1258,6 +1260,13 @@ begin end; end; +procedure import_implict_external(pd:tabstractprocdef); + +begin + tprocdef(pd).forwarddef:=false; + tprocdef(pd).setmangledname(tprocdef(pd).procsym.realname); +end; + type pd_handler=procedure(pd:tabstractprocdef); proc_dir_rec=record @@ -2238,7 +2247,10 @@ const end. { $Log$ - Revision 1.175 2004-05-11 06:59:35 michael + Revision 1.176 2004-05-11 18:29:41 olle + + mode macpas: support for implicit external + + Revision 1.175 2004/05/11 06:59:35 michael + Patch from peter to hide system unit as symbol Revision 1.174 2004/05/09 12:49:14 peter diff --git a/compiler/symsym.pas b/compiler/symsym.pas index 08af5305aa..c29bdb7028 100644 --- a/compiler/symsym.pas +++ b/compiler/symsym.pas @@ -325,7 +325,8 @@ implementation fmodule, { codegen } paramgr,cresstr, - procinfo + procinfo, + pdecsub ; {**************************************************************************** @@ -629,12 +630,16 @@ implementation p:=pdlistfirst; while assigned(p) do begin - if p^.own and - (p^.def.forwarddef) then + if p^.own and (p^.def.forwarddef) then begin - MessagePos1(p^.def.fileinfo,sym_e_forward_not_resolved,p^.def.fullprocname(false)); - { Turn futher error messages off } - p^.def.forwarddef:=false; + if (m_mac in aktmodeswitches) and (p^.def.interfacedef) then + import_implict_external(p^.def) + else + begin + MessagePos1(p^.def.fileinfo,sym_e_forward_not_resolved,p^.def.fullprocname(false)); + { Turn further error messages off } + p^.def.forwarddef:=false; + end end; p:=p^.next; end; @@ -2203,7 +2208,10 @@ implementation end. { $Log$ - Revision 1.169 2004-03-29 19:19:35 florian + Revision 1.170 2004-05-11 18:29:41 olle + + mode macpas: support for implicit external + + Revision 1.169 2004/03/29 19:19:35 florian + arm floating point register saving implemented * hopefully stabs generation for MacOSX fixed + some defines for arm added