Prechádzať zdrojové kódy

+ format("%d",[<qword>]); fixes 4489

git-svn-id: trunk@1640 -
florian 20 rokov pred
rodič
commit
ba22b0b3af
3 zmenil súbory, kde vykonal 30 pridanie a 2 odobranie
  1. 1 0
      .gitattributes
  2. 4 2
      rtl/objpas/sysutils/sysformt.inc
  3. 25 0
      tests/webtbs/tw4489.pp

+ 1 - 0
.gitattributes

@@ -6347,6 +6347,7 @@ tests/webtbs/tw4398.pp svneol=native#text/plain
 tests/webtbs/tw4427.pp svneol=native#text/plain
 tests/webtbs/tw4428.pp svneol=native#text/plain
 tests/webtbs/tw4450.pp svneol=native#text/plain
+tests/webtbs/tw4489.pp -text svneol=unset#text/plain
 tests/webtbs/ub1873.pp svneol=native#text/plain
 tests/webtbs/ub1883.pp svneol=native#text/plain
 tests/webtbs/uw0555.pp svneol=native#text/plain

+ 4 - 2
rtl/objpas/sysutils/sysformt.inc

@@ -209,8 +209,10 @@ begin
         'D' : begin
               if Checkarg(vtinteger,false) then
                 Str(Args[Doarg].VInteger,ToAdd)
-              else if CheckArg(vtInt64,true) then
-                Str(Args[DoArg].VInt64^,toadd);
+              else if CheckArg(vtInt64,false) then
+                Str(Args[DoArg].VInt64^,toadd)
+              else if CheckArg(vtQWord,true) then
+                Str(int64(Args[DoArg].VQWord^),toadd);
               Width:=Abs(width);
               Index:=Prec-Length(ToAdd);
               If ToAdd[1]<>'-' then

+ 25 - 0
tests/webtbs/tw4489.pp

@@ -0,0 +1,25 @@
+{ Source provided for Free Pascal Bug Report 4489 }
+{ Submitted by "Vincent Snijders" on  2005-11-04 }
+{ e-mail: [email protected] }
+program Project1;
+
+{$mode objfpc}{$H+}
+
+uses
+  Classes, SysUtils
+  { add your units here };
+
+var
+  s: string;
+  u: SizeUInt;
+  d: qword;
+
+begin
+   d:=11111111;
+   u:=1111;
+   s := format('pid=%d', [u]);
+   writeln(s);
+   s := format('pid=%d', [d]);
+   writeln(s);
+end.
+