* cdecl array fix, hack to change it to vs_var is not needed

This commit is contained in:
peter 2002-12-23 20:58:52 +00:00
parent 4cb96bf79b
commit 1c3ac34aa8

View File

@ -121,7 +121,6 @@ implementation
begin begin
if (varspez<>vs_var) then if (varspez<>vs_var) then
Message(parser_h_c_arrays_are_references); Message(parser_h_c_arrays_are_references);
varspez:=vs_var;
end; end;
if assigned(vartype.def) and if assigned(vartype.def) and
(is_array_of_const(vartype.def) or (is_array_of_const(vartype.def) or
@ -1568,12 +1567,20 @@ const
if (def.deftype=procdef) then if (def.deftype=procdef) then
begin begin
if not tprocdef(def).has_mangledname then if not tprocdef(def).has_mangledname then
begin
if (po_external in def.procoptions) and
target_info.DllScanSupported then
begin
tprocdef(def).setmangledname(sym.realname);
end
else
begin begin
if assigned(tprocdef(def)._class) then if assigned(tprocdef(def)._class) then
tprocdef(def).setmangledname(target_info.Cprefix+tprocdef(def)._class.objrealname^+'_'+sym.realname) tprocdef(def).setmangledname(target_info.Cprefix+tprocdef(def)._class.objrealname^+'_'+sym.realname)
else else
tprocdef(def).setmangledname(target_info.Cprefix+sym.realname); tprocdef(def).setmangledname(target_info.Cprefix+sym.realname);
end; end;
end;
if not assigned(tprocdef(def).parast) then if not assigned(tprocdef(def).parast) then
internalerror(200110234); internalerror(200110234);
{ check C cdecl para types } { check C cdecl para types }
@ -2080,7 +2087,10 @@ const
end. end.
{ {
$Log$ $Log$
Revision 1.90 2002-12-17 22:19:33 peter Revision 1.91 2002-12-23 20:58:52 peter
* cdecl array fix, hack to change it to vs_var is not needed
Revision 1.90 2002/12/17 22:19:33 peter
* fixed pushing of records>8 bytes with stdcall * fixed pushing of records>8 bytes with stdcall
* simplified hightree loading * simplified hightree loading