Przeglądaj źródła

* use paramanager.push_copyout_param() instead of duplicated/hardcoded logic
to determine whether a parameter will be wrapped via an array or not in
tprocdef.jvmmangledbasename()

git-svn-id: branches/jvmbackend@18689 -

Jonas Maebe 14 lat temu
rodzic
commit
b526505bbf
1 zmienionych plików z 1 dodań i 4 usunięć
  1. 1 4
      compiler/symdef.pas

+ 1 - 4
compiler/symdef.pas

@@ -4661,10 +4661,7 @@ implementation
                   does achieve regular call-by-reference semantics though;
                   does achieve regular call-by-reference semantics though;
                   formaldefs always have to be passed like that because their
                   formaldefs always have to be passed like that because their
                   contents can be replaced }
                   contents can be replaced }
-                if ((vs.vardef.typ=formaldef) and
-                    (vs.varspez<>vs_const)) or
-                   ((vs.varspez in [vs_var,vs_out,vs_constref]) and
-                    not jvmimplicitpointertype(vs.vardef)) then
+                if paramanager.push_copyout_param(vs.varspez,vs.vardef,proccalloption) then
                   tmpresult:=tmpresult+'[';
                   tmpresult:=tmpresult+'[';
                 { Add the parameter type.  }
                 { Add the parameter type.  }
                 if not jvmaddencodedtype(vs.vardef,false,tmpresult,signature,founderror) then
                 if not jvmaddencodedtype(vs.vardef,false,tmpresult,signature,founderror) then