diff --git a/rtl/inc/dynarr.inc b/rtl/inc/dynarr.inc index 5e02c4f831..ebaf24f44f 100644 --- a/rtl/inc/dynarr.inc +++ b/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; diff --git a/rtl/objpas/sysutils/sysformt.inc b/rtl/objpas/sysutils/sysformt.inc index 92c1ac365f..f290eabb29 100644 --- a/rtl/objpas/sysutils/sysformt.inc +++ b/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); diff --git a/tests/tbs/tb0488.pp b/tests/tbs/tb0488.pp index 15d28b6d6f..2ac3f1eaf1 100644 --- a/tests/tbs/tb0488.pp +++ b/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