Browse Source

* int64 prefix for win32 is q

peter 22 years ago
parent
commit
cc95981c0f
1 changed files with 8 additions and 4 deletions
  1. 8 4
      tests/test/cg/tprintf.pp

+ 8 - 4
tests/test/cg/tprintf.pp

@@ -10,10 +10,14 @@ uses
 {$linklib msvcrt}
 {$linklib msvcrt}
 procedure printf(const formatstr : pchar; const args : array of const);cdecl; external name 'printf';
 procedure printf(const formatstr : pchar; const args : array of const);cdecl; external name 'printf';
 procedure sprintf(p : pchar;const formatstr : pchar; const args : array of const);cdecl; external name 'sprintf';
 procedure sprintf(p : pchar;const formatstr : pchar; const args : array of const);cdecl; external name 'sprintf';
+const
+  int64prefix='q';
 {$else}
 {$else}
 {$linklib c}
 {$linklib c}
 procedure printf(const formatstr : pchar; const args : array of const);cdecl; external;
 procedure printf(const formatstr : pchar; const args : array of const);cdecl; external;
 procedure sprintf(p : pchar;const formatstr : pchar; const args : array of const);cdecl; external;
 procedure sprintf(p : pchar;const formatstr : pchar; const args : array of const);cdecl; external;
+const
+  int64prefix='ll';
 {$endif}
 {$endif}
 
 
 
 
@@ -55,8 +59,8 @@ begin
     end;
     end;
 
 
   Writeln('Testing with single int64 argument');
   Writeln('Testing with single int64 argument');
-  printf('Text containing int64: %lld'#10,[ll]);
-  sprintf(p,'Text containing int64: %lld'#10,[ll]);
+  printf('Text containing int64: %'+int64prefix+'d'#10,[ll]);
+  sprintf(p,'Text containing int64: %'+int64prefix+'d'#10,[ll]);
   if strpos(p,'int64: 345')=nil then
   if strpos(p,'int64: 345')=nil then
     begin
     begin
       writeln('The output of sprintf for int64 is wrong: ',p);
       writeln('The output of sprintf for int64 is wrong: ',p);
@@ -108,8 +112,8 @@ begin
     end;
     end;
 
 
   Writeln('Testing with single int64 argument and pchar');
   Writeln('Testing with single int64 argument and pchar');
-  printf('Text containing int64: %lld"%s"'#10,[ll,s2]);
-  sprintf(p,'Text containing int64: %lld"%s"'#10,[ll,s2]);
+  printf('Text containing int64: %'+int64prefix+'d"%s"'#10,[ll,s2]);
+  sprintf(p,'Text containing int64: %'+int64prefix+'d"%s"'#10,[ll,s2]);
   if strpos(p,'int64: 345"next"')=nil then
   if strpos(p,'int64: 345"next"')=nil then
     begin
     begin
       writeln('The output of sprintf for int64 is wrong: ',p);
       writeln('The output of sprintf for int64 is wrong: ',p);