Browse Source

* fixed tb0488 on unix platforms (missing cwstring uses)
* 64bit big-endian fix of dynamic array handling
* added qword support for %x format specifier of format() functions

git-svn-id: trunk@1773 -

tom_at_work 19 years ago
parent
commit
9d7ac02696
3 changed files with 8 additions and 2 deletions
  1. 1 1
      rtl/inc/dynarr.inc
  2. 6 0
      rtl/objpas/sysutils/sysformt.inc
  3. 1 1
      tests/tbs/tb0488.pp

+ 1 - 1
rtl/inc/dynarr.inc

@@ -20,7 +20,7 @@ type
    { to calculate memory requirements       }
    pdynarray = ^tdynarray;
    tdynarray = packed record
-      refcount : longint;
+      refcount : ptrint;
       high : tdynarrayindex;
    end;
 

+ 6 - 0
rtl/objpas/sysutils/sysformt.inc

@@ -300,6 +300,12 @@ begin
                    vq:=Cardinal(Args[Doarg].VInteger);
                    index:=16;
                  end
+              else
+                 if CheckArg(vtQWord, false) then
+                   begin
+                     vq:=Qword(Args[DoArg].VQWord^);
+                     index:=31;
+                   end
               else
                  begin
                    CheckArg(vtInt64,true);

+ 1 - 1
tests/tbs/tb0488.pp

@@ -27,7 +27,7 @@
     999999999
 }
 
-uses SysUtils,erroru;
+uses {$ifdef unix}cwstring, {$endif}SysUtils,erroru;
 
 procedure Check(a,b:ansistring);
 begin