瀏覽代碼

* Write default value for parameters. Fixes issue #41145

Michaël Van Canneyt 1 月之前
父節點
當前提交
c8da8817bd
共有 2 個文件被更改,包括 6 次插入0 次删除
  1. 4 0
      packages/fcl-passrc/src/pastree.pp
  2. 2 0
      packages/fcl-passrc/src/paswrite.pp

+ 4 - 0
packages/fcl-passrc/src/pastree.pp

@@ -3812,7 +3812,11 @@ begin
     else
       Result:=ArgType.GetDeclaration(False);
     If Full and (Name<>'') then
+      begin
       Result:=SafeName+': '+Result;
+      if Value<>'' then            
+        Result:=Result+'='+Value;  
+      end;
     end
   else If Full then
     Result:=SafeName

+ 2 - 0
packages/fcl-passrc/src/paswrite.pp

@@ -850,6 +850,8 @@ begin
     Add(AccessNames[aArg.Access]+' ');
   Add(aArg.SafeName+' : ');
   WriteType(aArg.ArgType,False);
+  if aArg.Value<>'' then  
+    Add(' = '+aArg.Value);
 end;
 
 procedure TPasWriter.WriteOverloadedProc(aProc: TPasOverloadedProc; ForceBody: Boolean = False; NamePrefix : String = '');