Browse Source

* PChar -> PAnsiChar

Michaël Van Canneyt 2 years ago
parent
commit
c5a97445b0
46 changed files with 573 additions and 563 deletions
  1. 1 1
      packages/fcl-base/examples/b64test2.pp
  2. 21 21
      packages/fcl-base/examples/base64decodingtestcase.pas
  3. 6 6
      packages/fcl-base/examples/cachetest.pp
  4. 2 1
      packages/fcl-base/examples/demobasenenc.lpr
  5. 1 1
      packages/fcl-base/examples/dsocksvr.pp
  6. 2 2
      packages/fcl-base/examples/fpexprpars.txt
  7. 1 1
      packages/fcl-base/examples/fstream.pp
  8. 11 11
      packages/fcl-base/examples/list.pp
  9. 1 1
      packages/fcl-base/examples/mstream.pp
  10. 2 2
      packages/fcl-base/examples/sitest.pp
  11. 1 1
      packages/fcl-base/examples/testapp.pp
  12. 2 1
      packages/fcl-base/examples/testappexit.pp
  13. 5 5
      packages/fcl-base/examples/testbs.pp
  14. 1 1
      packages/fcl-base/examples/testproc.pp
  15. 17 16
      packages/fcl-base/examples/testser.pp
  16. 1 1
      packages/fcl-base/examples/testz2.pp
  17. 3 3
      packages/fcl-base/examples/threads.pp
  18. 1 1
      packages/fcl-base/examples/txmlreg.pp
  19. 4 4
      packages/fcl-base/src/advancedsingleinstance.pas
  20. 2 2
      packages/fcl-base/src/ascii85.pp
  21. 12 12
      packages/fcl-base/src/base64.pp
  22. 2 2
      packages/fcl-base/src/basenenc.pp
  23. 5 5
      packages/fcl-base/src/blowfish.pp
  24. 10 10
      packages/fcl-base/src/bufstream.pp
  25. 75 75
      packages/fcl-base/src/contnrs.pp
  26. 10 7
      packages/fcl-base/src/csvreadwrite.pp
  27. 142 139
      packages/fcl-base/src/fpexprpars.pp
  28. 27 26
      packages/fcl-base/src/gettext.pp
  29. 1 1
      packages/fcl-base/src/go32v2/custapp.inc
  30. 5 5
      packages/fcl-base/src/idea.pp
  31. 14 14
      packages/fcl-base/src/inicol.pp
  32. 1 1
      packages/fcl-base/src/netwlibc/custapp.inc
  33. 3 3
      packages/fcl-base/src/os2/custapp.inc
  34. 20 20
      packages/fcl-base/src/os2/eventlog.inc
  35. 4 4
      packages/fcl-base/src/rtfdata.inc
  36. 15 15
      packages/fcl-base/src/rtfpars.pp
  37. 2 2
      packages/fcl-base/src/singleinstance.pp
  38. 17 17
      packages/fcl-base/src/streamex.pp
  39. 6 6
      packages/fcl-base/src/unix/eventlog.inc
  40. 9 9
      packages/fcl-base/src/win/eventlog.inc
  41. 3 3
      packages/fcl-base/src/wince/fileinfo.pp
  42. 9 9
      packages/fcl-base/tests/tcbufferedfilestream.pp
  43. 4 4
      packages/fcl-base/tests/tccsvdocument.pp
  44. 5 5
      packages/fcl-base/tests/tccsvreadwrite.pp
  45. 8 8
      packages/fcl-base/tests/testbasenenc.lpr
  46. 79 79
      packages/fcl-base/tests/testexprpars.pp

+ 1 - 1
packages/fcl-base/examples/b64test2.pp

@@ -7,7 +7,7 @@ var
   b64decoder: TBase64DecodingStream;
   b64decoder: TBase64DecodingStream;
   BaseStream: TStream;
   BaseStream: TStream;
   i, j: Integer;
   i, j: Integer;
-  buf: array[1..23] of Char;
+  buf: array[1..23] of AnsiChar;
 begin
 begin
   BaseStream := TMemoryStream.Create;
   BaseStream := TMemoryStream.Create;
 
 

+ 21 - 21
packages/fcl-base/examples/base64decodingtestcase.pas

@@ -29,13 +29,13 @@ type
     procedure SetUp; override;
     procedure SetUp; override;
     procedure TearDown; override;
     procedure TearDown; override;
     // utility
     // utility
-    procedure WriteToSourceStream(s:string);
-    function NoiseCharString:string; // all non-base64 alphabet characters
-    function RandomNoise(l:integer):string; // l random non-base64 alphabet characters
+    procedure WriteToSourceStream(s:AnsiString);
+    function NoiseCharString:ansistring; // all non-base64 alphabet characters
+    function RandomNoise(l:integer):ansistring; // l random non-base64 alphabet characters
     // test templates
     // test templates
-    procedure TestGetSize(mode:TBase64DecodingMode; s:string; expectedSize:Int64);
-    procedure TestDecode (mode:TBase64DecodingMode; s, expected:string);
-    procedure TestReset  (mode:TBase64DecodingMode; s:string; start:array of Int64; expected:array of string);
+    procedure TestGetSize(mode:TBase64DecodingMode; s:AnsiString; expectedSize:Int64);
+    procedure TestDecode (mode:TBase64DecodingMode; s, expected: AnsiString);
+    procedure TestReset  (mode:TBase64DecodingMode; s:AnsiString; start:array of Int64; expected:array of ansistring);
   published
   published
     procedure TestGetSizeStrict1;
     procedure TestGetSizeStrict1;
     procedure TestGetSizeStrict2;
     procedure TestGetSizeStrict2;
@@ -98,12 +98,12 @@ uses
 
 
 // utility routines
 // utility routines
 type
 type
-  TChars = set of char;
+  TChars = set of AnsiChar;
   
   
-function SetToString(chars:TChars):string;
+function SetToString(chars:TChars):ansistring;
 var
 var
   pos: Integer;
   pos: Integer;
-  c: Char;
+  c: AnsiChar;
 begin
 begin
   pos:=0;
   pos:=0;
   SetLength(Result,256);
   SetLength(Result,256);
@@ -115,11 +115,11 @@ begin
   SetLength(Result,pos);
   SetLength(Result,pos);
 end;
 end;
 
 
-function Shuffle(s:string):string;
+function Shuffle(s: ansistring): ansistring;
 var
 var
   i: Integer;
   i: Integer;
   randomPos: Integer;
   randomPos: Integer;
-  c: Char;
+  c: AnsiChar;
 begin
 begin
   UniqueString(s);
   UniqueString(s);
   for i:=1 to Length(s) do begin
   for i:=1 to Length(s) do begin
@@ -132,7 +132,7 @@ begin
 end;
 end;
 
 
 // order preserving shuffle
 // order preserving shuffle
-function Merge(s,t:string):string;
+function Merge(s,t: ansistring): ansistring;
 var
 var
   si: Integer;
   si: Integer;
   ti: Integer;
   ti: Integer;
@@ -181,21 +181,21 @@ begin
   FreeAndNil(SourceStream);
   FreeAndNil(SourceStream);
 end;
 end;
 
 
-procedure TBase64DecodingStreamTestCase.WriteToSourceStream(s: string);
+procedure TBase64DecodingStreamTestCase.WriteToSourceStream(s: ansistring);
 begin
 begin
   SourceStream.Write(s[1],Length(s));
   SourceStream.Write(s[1],Length(s));
   SourceStream.Position:=0;
   SourceStream.Position:=0;
 end;
 end;
 
 
-function TBase64DecodingStreamTestCase.NoiseCharString: string;
+function TBase64DecodingStreamTestCase.NoiseCharString: ansistring;
 begin
 begin
   Result:=SetToString([#0..#255]-['a'..'z','A'..'Z','0'..'9','+','/','=']);
   Result:=SetToString([#0..#255]-['a'..'z','A'..'Z','0'..'9','+','/','=']);
 end;
 end;
 
 
-function TBase64DecodingStreamTestCase.RandomNoise(l: integer): string;
+function TBase64DecodingStreamTestCase.RandomNoise(l: integer): ansistring;
 var
 var
   i: Integer;
   i: Integer;
-  noiseChars: String;
+  noiseChars: ansistring;
 begin
 begin
   noiseChars:=NoiseCharString; // our pool
   noiseChars:=NoiseCharString; // our pool
   SetLength(Result,l);
   SetLength(Result,l);
@@ -203,7 +203,7 @@ begin
     Result[i]:=noiseChars[Random(Length(noiseChars))+1];
     Result[i]:=noiseChars[Random(Length(noiseChars))+1];
 end;
 end;
 
 
-procedure TBase64DecodingStreamTestCase.TestGetSize(mode:TBase64DecodingMode; s: string; expectedSize: Int64);
+procedure TBase64DecodingStreamTestCase.TestGetSize(mode:TBase64DecodingMode; s: ansistring; expectedSize: Int64);
 var
 var
   Size: Int64;
   Size: Int64;
 begin
 begin
@@ -213,9 +213,9 @@ begin
   AssertEquals('Correct size calculated by Size getter', Size, expectedSize);
   AssertEquals('Correct size calculated by Size getter', Size, expectedSize);
 end;
 end;
 
 
-procedure TBase64DecodingStreamTestCase.TestDecode(mode: TBase64DecodingMode; s, expected: string);
+procedure TBase64DecodingStreamTestCase.TestDecode(mode: TBase64DecodingMode; s, expected: );
 var
 var
-  Buf: array[0..63] of Char;
+  Buf: array[0..63] of AnsiChar;
   si: Integer;
   si: Integer;
   i: Integer;
   i: Integer;
   count: LongInt;
   count: LongInt;
@@ -235,9 +235,9 @@ begin
   AssertEquals('Correct decoded length', Length(expected), si-1);
   AssertEquals('Correct decoded length', Length(expected), si-1);
 end;
 end;
 
 
-procedure TBase64DecodingStreamTestCase.TestReset(mode: TBase64DecodingMode; s: string; start: array of Int64; expected: array of string);
+procedure TBase64DecodingStreamTestCase.TestReset(mode: TBase64DecodingMode; s: ansistring; start: array of Int64; expected: array of ansistring);
 var
 var
-  Buf: array[0..63] of Char;
+  Buf: array[0..63] of AnsiChar;
   len: Integer;
   len: Integer;
   i: Integer;
   i: Integer;
   count: LongInt;
   count: LongInt;

+ 6 - 6
packages/fcl-base/examples/cachetest.pp

@@ -25,7 +25,7 @@ type
     function TestCacheIsDataEqual(ACache: TCache; AData1, AData2: Pointer): Boolean;
     function TestCacheIsDataEqual(ACache: TCache; AData1, AData2: Pointer): Boolean;
     procedure TestCacheFreeSlot(ACache: TCache; SlotIndex: Integer);
     procedure TestCacheFreeSlot(ACache: TCache; SlotIndex: Integer);
   protected
   protected
-    procedure AddString(const s: PChar);
+    procedure AddString(const s: PAnsiChar);
     procedure DumpCache;
     procedure DumpCache;
   public
   public
     constructor Create;
     constructor Create;
@@ -41,22 +41,22 @@ begin
   if (not Assigned(AData1)) or (not Assigned(AData2)) then
   if (not Assigned(AData1)) or (not Assigned(AData2)) then
     Result := (not Assigned(AData1)) and (not Assigned(AData2))
     Result := (not Assigned(AData1)) and (not Assigned(AData2))
   else
   else
-    Result := StrComp(PChar(AData1), PChar(AData2)) = 0;
+    Result := StrComp(PAnsiChar(AData1), PAnsiChar(AData2)) = 0;
 end;
 end;
 
 
 procedure TCacheTester.TestCacheFreeSlot(ACache: TCache; SlotIndex: Integer);
 procedure TCacheTester.TestCacheFreeSlot(ACache: TCache; SlotIndex: Integer);
 var
 var
-  p: PChar;
+  p: PAnsiChar;
 begin
 begin
   Write('  Cache slot #', SlotIndex, ' has been freed (content: ');
   Write('  Cache slot #', SlotIndex, ' has been freed (content: ');
-  p := PChar(ACache.Slots[SlotIndex]^.Data);
+  p := PAnsiChar(ACache.Slots[SlotIndex]^.Data);
   if Assigned(p) then
   if Assigned(p) then
     WriteLn('"', p, '")')
     WriteLn('"', p, '")')
   else
   else
     WriteLn('nil)');
     WriteLn('nil)');
 end;
 end;
 
 
-procedure TCacheTester.AddString(const s: PChar);
+procedure TCacheTester.AddString(const s: PAnsiChar);
 var
 var
   i: Integer;
   i: Integer;
 begin
 begin
@@ -78,7 +78,7 @@ begin
   begin
   begin
     Write('  Slot #', Slot^.Index, '  ');
     Write('  Slot #', Slot^.Index, '  ');
     if Assigned(Slot^.Data) then
     if Assigned(Slot^.Data) then
-      Write('"', PChar(Slot^.Data), '"')
+      Write('"', PAnsiChar(Slot^.Data), '"')
     else
     else
       Write('nil');
       Write('nil');
     if Slot^.Prev <> PrevSlot then
     if Slot^.Prev <> PrevSlot then

+ 2 - 1
packages/fcl-base/examples/demobasenenc.lpr

@@ -14,7 +14,8 @@
 
 
  **********************************************************************}
  **********************************************************************}
 program demobasenenc;
 program demobasenenc;
-
+{$mode objfpc}
+{$h+}
 uses sysutils, basenenc, typinfo, custapp, Classes;
 uses sysutils, basenenc, typinfo, custapp, Classes;
 
 
 Type
 Type

+ 1 - 1
packages/fcl-base/examples/dsocksvr.pp

@@ -105,7 +105,7 @@ end;
 
 
 Var
 Var
   Application : TServerApp;
   Application : TServerApp;
-  c : char;
+  c : AnsiChar;
 
 
 begin
 begin
   DoInet:=False;
   DoInet:=False;

+ 2 - 2
packages/fcl-base/examples/fpexprpars.txt

@@ -4,7 +4,7 @@ The parser compiles the expression into a node tree, which is
 type checked after it was compiled.
 type checked after it was compiled.
 
 
 The expression parser handles the following types:
 The expression parser handles the following types:
-  String 
+
   Integer (64-bit)
   Integer (64-bit)
   Float (TExprFloat, normally Double) 
   Float (TExprFloat, normally Double) 
   TDateTime
   TDateTime
@@ -72,7 +72,7 @@ The arguments are:
   Name : Name of the function
   Name : Name of the function
   Result type : Character with result type:
   Result type : Character with result type:
     I : integer
     I : integer
-    S : String
+    S :
     F : FLoat
     F : FLoat
     D : TDateTime
     D : TDateTime
     B : Boolean
     B : Boolean

+ 1 - 1
packages/fcl-base/examples/fstream.pp

@@ -3,7 +3,7 @@ Program TestStream;
 uses classes;
 uses classes;
 
 
 Var Stream : TFileStream;
 Var Stream : TFileStream;
-    S,T : String;
+    S,T : AnsiString;
 
 
 begin
 begin
   S:='ABCDEFGHIJKLMNOPQRSTUVWXYZ';
   S:='ABCDEFGHIJKLMNOPQRSTUVWXYZ';

+ 11 - 11
packages/fcl-base/examples/list.pp

@@ -4,16 +4,16 @@ Program TestList;
 
 
 Uses classes;
 Uses classes;
 
 
-const a1 : pchar = '0';
-      a2 : pchar = '1';
-      a3 : pchar = '2';
-      a4 : pchar = '3';
-      a5 : pchar = '4';
-      a6 : pchar = '5';
-      a7 : pchar = '6';
-      a8 : pchar = '7';
-      a9 : pchar = '8';
-      a10 : pchar = '9';
+const a1 : PAnsiChar = '0';
+      a2 : PAnsiChar = '1';
+      a3 : PAnsiChar = '2';
+      a4 : PAnsiChar = '3';
+      a5 : PAnsiChar = '4';
+      a6 : PAnsiChar = '5';
+      a7 : PAnsiChar = '6';
+      a8 : PAnsiChar = '7';
+      a9 : PAnsiChar = '8';
+      a10 : PAnsiChar = '9';
 
 
 Var List : TList;
 Var List : TList;
     StartMem,Runner : longint;
     StartMem,Runner : longint;
@@ -41,7 +41,7 @@ begin
   If List.Count>0 then
   If List.Count>0 then
     begin
     begin
     For i:=0 to List.Count-1 do
     For i:=0 to List.Count-1 do
-      if assigned(List.items[I]) then write (Pchar(List.items[i])) else write ('*');
+      if assigned(List.items[I]) then write (PAnsiChar(List.items[i])) else write ('*');
     Writeln;
     Writeln;
     end;
     end;
 end;
 end;

+ 1 - 1
packages/fcl-base/examples/mstream.pp

@@ -3,7 +3,7 @@ Program TestStream;
 uses classes;
 uses classes;
 
 
 Var Stream : TMemoryStream;
 Var Stream : TMemoryStream;
-    S,T : String;
+    S,T : AnsiString;
 
 
 begin
 begin
   S:='ABCDEFGHIJKLMNOPQRSTUVWXYZ';
   S:='ABCDEFGHIJKLMNOPQRSTUVWXYZ';

+ 2 - 2
packages/fcl-base/examples/sitest.pp

@@ -25,11 +25,11 @@ procedure TMyCustomApplication.ServerReceivedCustomRequest(
   Sender: TBaseSingleInstance; MsgID: Integer; aMsgType: TMessageType;
   Sender: TBaseSingleInstance; MsgID: Integer; aMsgType: TMessageType;
   MsgData: TStream);
   MsgData: TStream);
 var
 var
-  xData: string;
+  xData: AnsiString;
   xStringStream: TStringStream;
   xStringStream: TStringStream;
 begin
 begin
   MsgData.Position := 0;
   MsgData.Position := 0;
-  SetLength(xData, MsgData.Size div SizeOf(Char));
+  SetLength(xData, MsgData.Size div SizeOf(AnsiChar));
   if MsgData.Size > 0 then
   if MsgData.Size > 0 then
     MsgData.ReadBuffer(xData[1], MsgData.Size);
     MsgData.ReadBuffer(xData[1], MsgData.Size);
 
 

+ 1 - 1
packages/fcl-base/examples/testapp.pp

@@ -33,7 +33,7 @@ begin
   Writeln('ParamCount          : ',ParamCount);
   Writeln('ParamCount          : ',ParamCount);
   For I:=0 to ParamCount do
   For I:=0 to ParamCount do
     Writeln('Params [',I:3,']        : ',Params[i]);
     Writeln('Params [',I:3,']        : ',Params[i]);
-  Writeln('Option char         : ',OptionChar);
+  Writeln('Option AnsiChar         : ',OptionChar);
   Writeln('Case sensitive opts : ',CaseSensitiveOptions);
   Writeln('Case sensitive opts : ',CaseSensitiveOptions);
   Writeln('StopOnException     : ',StopOnException);
   Writeln('StopOnException     : ',StopOnException);
   Writeln('----------------------------------------');
   Writeln('----------------------------------------');

+ 2 - 1
packages/fcl-base/examples/testappexit.pp

@@ -1,5 +1,6 @@
 program testappexit;
 program testappexit;
-
+{$mode objfpc}
+{$h+}
 uses sysutils,custapp;
 uses sysutils,custapp;
 
 
 type
 type

+ 5 - 5
packages/fcl-base/examples/testbs.pp

@@ -25,7 +25,7 @@ Var
   MBSize     : Integer = 1024*100;
   MBSize     : Integer = 1024*100;
   SBCapacity : Integer = 1024*16;
   SBCapacity : Integer = 1024*16;
 
 
-procedure TestRead(Buffer : PChar; ACapacity : Integer);
+procedure TestRead(Buffer : PAnsiChar; ACapacity : Integer);
 
 
 Var
 Var
   F2 : TFileStream;
   F2 : TFileStream;
@@ -36,7 +36,7 @@ begin
   B:=TReadBufStream.Create(TFileStream.Create(PAramStr(0),fmOpenRead),ACapacity);
   B:=TReadBufStream.Create(TFileStream.Create(PAramStr(0),fmOpenRead),ACapacity);
   Try
   Try
     B.SourceOwner:=True;
     B.SourceOwner:=True;
-    F2:=TFileStream.Create(ChangeFileExt(PAramStr(0),'.tr'),fmCreate);
+    F2:=TFileStream.Create(ChangeFileExt(PAramStr(0),RTLString('.tr')),fmCreate);
     Try
     Try
       Repeat
       Repeat
         C:=B.Read(Buffer^,MBSize);
         C:=B.Read(Buffer^,MBSize);
@@ -50,7 +50,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TestWrite(Buffer : PChar; ACapacity : Integer);
+procedure TestWrite(Buffer : PAnsiChar; ACapacity : Integer);
 
 
 Var
 Var
   F : TFileStream;
   F : TFileStream;
@@ -60,7 +60,7 @@ Var
 begin
 begin
   F:=TFileStream.Create(PAramStr(0),fmOpenRead);
   F:=TFileStream.Create(PAramStr(0),fmOpenRead);
   Try
   Try
-    B:=TWriteBufStream.Create(TFileStream.Create(ChangeFileExt(PAramStr(0),'.tw'),fmCreate),ACapacity);
+    B:=TWriteBufStream.Create(TFileStream.Create(ChangeFileExt(PAramStr(0),RTLString('.tw')),fmCreate),ACapacity);
     Try
     Try
       B.SourceOwner:=True;
       B.SourceOwner:=True;
       Repeat
       Repeat
@@ -76,7 +76,7 @@ begin
 end;
 end;
 
 
 Var
 Var
-  Buffer : PChar;
+  Buffer : PAnsiChar;
 
 
 begin
 begin
   If ParamCount>0 then
   If ParamCount>0 then

+ 1 - 1
packages/fcl-base/examples/testproc.pp

@@ -12,7 +12,7 @@ Const BufSize = 1024;
 
 
 
 
 Var S : TProcess;
 Var S : TProcess;
-    Buf : Array[1..BUFSIZE] of char;
+    Buf : Array[1..BUFSIZE] of AnsiChar;
     I,Count : longint;
     I,Count : longint;
 
 
 begin
 begin

+ 17 - 16
packages/fcl-base/examples/testser.pp

@@ -11,11 +11,12 @@ dpmiexcp,
 Typinfo,classes,iostream;
 Typinfo,classes,iostream;
 
 
 Const TypeNames : Array [TTYpeKind] of string[15] =
 Const TypeNames : Array [TTYpeKind] of string[15] =
-                    ('Unknown','Integer','Char','Enumeration',
+                    ('Unknown','Integer','AnsiChar','Enumeration',
                      'Float','Set','Method','ShortString','LongString',
                      'Float','Set','Method','ShortString','LongString',
                      'AnsiString','WideString','Variant','Array','Record',
                      'AnsiString','WideString','Variant','Array','Record',
                      'Interface','Class','Object','WideChar','Bool','Int64',
                      'Interface','Class','Object','WideChar','Bool','Int64',
-                     'QWord','DynArray','InterfaceRaw');
+                     'QWord','DynArray','InterfaceRaw',
+                     '', '', '', '', '', '', '');
 Const OrdinalTypes = [tkInteger,tkChar,tkENumeration,tkbool,tkInt64,tkQWord];
 Const OrdinalTypes = [tkInteger,tkChar,tkENumeration,tkbool,tkInt64,tkQWord];
 
 
 Type
 Type
@@ -24,7 +25,7 @@ Type
        Private
        Private
        FBoolean  : Boolean;
        FBoolean  : Boolean;
        FByte     : Byte;
        FByte     : Byte;
-       FChar     : Char;
+       FChar     : AnsiChar;
        FWord     : Word;
        FWord     : Word;
        FInteger  : Integer;
        FInteger  : Integer;
        Flongint  : Longint;
        Flongint  : Longint;
@@ -37,7 +38,7 @@ Type
        FStored   : Boolean;
        FStored   : Boolean;
        Function GetBoolean : Boolean;
        Function GetBoolean : Boolean;
        Function GetByte : Byte;
        Function GetByte : Byte;
-       Function GetChar : Char;
+       Function GetChar : AnsiChar;
        Function GetWord : Word;
        Function GetWord : Word;
        Function GetInteger : Integer;
        Function GetInteger : Integer;
        Function GetLongint : Longint;
        Function GetLongint : Longint;
@@ -48,7 +49,7 @@ Type
        Function GetMyEnum : TMyEnum;
        Function GetMyEnum : TMyEnum;
        Procedure SetBoolean ( Value : Boolean);
        Procedure SetBoolean ( Value : Boolean);
        Procedure SetByte ( Value : Byte );
        Procedure SetByte ( Value : Byte );
-       Procedure SetChar ( Value : Char );
+       Procedure SetChar ( Value : AnsiChar );
        Procedure SetWord ( Value : Word );
        Procedure SetWord ( Value : Word );
        Procedure SetInteger ( Value : Integer );
        Procedure SetInteger ( Value : Integer );
        Procedure SetLongint ( Value : Longint );
        Procedure SetLongint ( Value : Longint );
@@ -59,7 +60,7 @@ Type
        Procedure SetMyEnum ( Value : TMyEnum );
        Procedure SetMyEnum ( Value : TMyEnum );
        Function GetVirtualBoolean : Boolean; virtual;
        Function GetVirtualBoolean : Boolean; virtual;
        Function GetVirtualByte : Byte; virtual;
        Function GetVirtualByte : Byte; virtual;
-       Function GetVirtualChar : Char; virtual;
+       Function GetVirtualChar : AnsiChar; virtual;
        Function GetVirtualWord : Word; virtual;
        Function GetVirtualWord : Word; virtual;
        Function GetVirtualInteger : Integer; virtual;
        Function GetVirtualInteger : Integer; virtual;
        Function GetVirtualLongint : Longint; virtual;
        Function GetVirtualLongint : Longint; virtual;
@@ -70,7 +71,7 @@ Type
        Function GetVirtualMyEnum : TMyEnum; virtual;
        Function GetVirtualMyEnum : TMyEnum; virtual;
        Procedure SetVirtualBoolean ( Value : Boolean); virtual;
        Procedure SetVirtualBoolean ( Value : Boolean); virtual;
        Procedure SetVirtualByte ( Value : Byte ); virtual;
        Procedure SetVirtualByte ( Value : Byte ); virtual;
-       Procedure SetVirtualChar ( Value : Char ); virtual;
+       Procedure SetVirtualChar ( Value : AnsiChar ); virtual;
        Procedure SetVirtualWord ( Value : Word ); virtual;
        Procedure SetVirtualWord ( Value : Word ); virtual;
        Procedure SetVirtualInteger ( Value : Integer ); virtual;
        Procedure SetVirtualInteger ( Value : Integer ); virtual;
        Procedure SetVirtualLongint ( Value : Longint ); virtual;
        Procedure SetVirtualLongint ( Value : Longint ); virtual;
@@ -88,7 +89,7 @@ Type
        Property ObjField: TObject read FObj write FObj;
        Property ObjField: TObject read FObj write FObj;
        Property BooleanField : Boolean Read FBoolean Write FBoolean;
        Property BooleanField : Boolean Read FBoolean Write FBoolean;
        Property ByteField : Byte Read FByte Write FByte;
        Property ByteField : Byte Read FByte Write FByte;
-       Property CharField : Char Read FChar Write FChar;
+       Property CharField : AnsiChar Read FChar Write FChar;
        Property WordField : Word Read FWord Write FWord;
        Property WordField : Word Read FWord Write FWord;
        Property IntegerField : Integer Read FInteger Write FInteger;
        Property IntegerField : Integer Read FInteger Write FInteger;
        Property LongintField : Longint Read FLongint Write FLongint;
        Property LongintField : Longint Read FLongint Write FLongint;
@@ -99,7 +100,7 @@ Type
        Property MyEnumField : TMyEnum Read FMyEnum Write FMyEnum;
        Property MyEnumField : TMyEnum Read FMyEnum Write FMyEnum;
        Property BooleanMethod : Boolean Read GetBoolean Write SetBoolean;
        Property BooleanMethod : Boolean Read GetBoolean Write SetBoolean;
        Property ByteMethod : Byte Read GetByte Write SetByte;
        Property ByteMethod : Byte Read GetByte Write SetByte;
-       Property CharMethod : Char Read GetChar Write SetChar;
+       Property CharMethod : AnsiChar Read GetChar Write SetChar;
        Property WordMethod : Word Read GetWord Write SetWord;
        Property WordMethod : Word Read GetWord Write SetWord;
        Property IntegerMethod : Integer Read GetInteger Write SetInteger;
        Property IntegerMethod : Integer Read GetInteger Write SetInteger;
        Property LongintMethod : Longint Read GetLongint Write SetLongint;
        Property LongintMethod : Longint Read GetLongint Write SetLongint;
@@ -110,7 +111,7 @@ Type
        Property MyEnumMethod : TMyEnum Read GetMyEnum Write SetMyEnum;
        Property MyEnumMethod : TMyEnum Read GetMyEnum Write SetMyEnum;
        Property BooleanVirtualMethod : Boolean Read GetVirtualBoolean Write SetVirtualBoolean;
        Property BooleanVirtualMethod : Boolean Read GetVirtualBoolean Write SetVirtualBoolean;
        Property ByteVirtualMethod : Byte Read GetVirtualByte Write SetVirtualByte;
        Property ByteVirtualMethod : Byte Read GetVirtualByte Write SetVirtualByte;
-       Property CharVirtualMethod : Char Read GetVirtualChar Write SetVirtualChar;
+       Property CharVirtualMethod : AnsiChar Read GetVirtualChar Write SetVirtualChar;
        Property WordVirtualMethod : Word Read GetVirtualWord Write SetVirtualWord;
        Property WordVirtualMethod : Word Read GetVirtualWord Write SetVirtualWord;
        Property IntegerVirtualMethod : Integer Read GetVirtualInteger Write SetVirtualInteger;
        Property IntegerVirtualMethod : Integer Read GetVirtualInteger Write SetVirtualInteger;
        Property LongintVirtualMethod : Longint Read GetVirtualLongint Write SetVirtualLongint;
        Property LongintVirtualMethod : Longint Read GetVirtualLongint Write SetVirtualLongint;
@@ -131,7 +132,7 @@ Constructor TMyTestObject.Create;
 begin
 begin
   FBoolean:=true;
   FBoolean:=true;
   FByte:=1;        {     : Byte;}
   FByte:=1;        {     : Byte;}
-  FChar:='B';      {    : Char; }
+  FChar:='B';      {    : AnsiChar; }
   FWord:=3;      {: Word;     }
   FWord:=3;      {: Word;     }
   FInteger:=4;     {: Integer;  }
   FInteger:=4;     {: Integer;  }
   Flongint:=5;     { : Longint; }
   Flongint:=5;     { : Longint; }
@@ -160,7 +161,7 @@ begin
   Result:=FByte;
   Result:=FByte;
 end;
 end;
 
 
-Function TMyTestObject.GetChar : Char;
+Function TMyTestObject.GetChar : AnsiChar;
 begin
 begin
   Result:=FChar;
   Result:=FChar;
 end;
 end;
@@ -216,7 +217,7 @@ begin
   FByte:=Value;
   FByte:=Value;
 end;
 end;
 
 
-Procedure TMyTestObject.SetChar ( Value : Char );
+Procedure TMyTestObject.SetChar ( Value : AnsiChar );
 begin
 begin
   FChar:=Value;
   FChar:=Value;
 end;
 end;
@@ -273,7 +274,7 @@ begin
   Result:=FByte;
   Result:=FByte;
 end;
 end;
 
 
-Function TMyTestObject.GetVirtualChar : Char;
+Function TMyTestObject.GetVirtualChar : AnsiChar;
 begin
 begin
   Result:=FChar;
   Result:=FChar;
 end;
 end;
@@ -329,7 +330,7 @@ begin
   FByte:=Value;
   FByte:=Value;
 end;
 end;
 
 
-Procedure TMyTestObject.SetVirtualChar ( Value : Char );
+Procedure TMyTestObject.SetVirtualChar ( Value : AnsiChar );
 begin
 begin
   FChar:=Value;
   FChar:=Value;
 end;
 end;
@@ -397,7 +398,7 @@ begin
     For J:=1 to 10  do
     For J:=1 to 10  do
       begin
       begin
       If (PL^>31) and (PL^<129) then
       If (PL^>31) and (PL^<129) then
-         Write('  ',CHar(PL^))
+         Write('  ',AnsiChar(PL^))
       else
       else
         Write (PL^:3);
         Write (PL^:3);
       Write (' ');
       Write (' ');

+ 1 - 1
packages/fcl-base/examples/testz2.pp

@@ -12,7 +12,7 @@ const
 Var F : TGZfileStream;
 Var F : TGZfileStream;
     S : String;
     S : String;
     i :longint;
     i :longint;
-    c : char;
+    c : AnsiChar;
 begin
 begin
   Writeln ('Creating file.');
   Writeln ('Creating file.');
   S:='This is a sentence'+eol;
   S:='This is a sentence'+eol;

+ 3 - 3
packages/fcl-base/examples/threads.pp

@@ -9,11 +9,11 @@ uses
 type
 type
   TMyThread=class(TThread)
   TMyThread=class(TThread)
   private
   private
-    ch : char;
+    ch : AnsiChar;
   protected
   protected
     procedure Execute; override;
     procedure Execute; override;
   public
   public
-    constructor Create(c:char);
+    constructor Create(c:AnsiChar);
   end;
   end;
 
 
 procedure TMyThread.Execute;
 procedure TMyThread.Execute;
@@ -24,7 +24,7 @@ begin
 end;
 end;
 
 
 
 
-constructor TMyThread.Create(c:char);
+constructor TMyThread.Create(c:AnsiChar);
 begin
 begin
   ch:=c;
   ch:=c;
   inherited Create(false);
   inherited Create(false);

+ 1 - 1
packages/fcl-base/examples/txmlreg.pp

@@ -5,7 +5,7 @@ program txmlreg;
 uses xmlreg;
 uses xmlreg;
 
 
 Var
 Var
-  S : String;
+  S : AnsiString;
   C : Cardinal;
   C : Cardinal;
   A : Array[0..15] of byte;
   A : Array[0..15] of byte;
 
 

+ 4 - 4
packages/fcl-base/src/advancedsingleinstance.pas

@@ -35,12 +35,12 @@ type
   TAdvancedSingleInstance = class(TBaseSingleInstance)
   TAdvancedSingleInstance = class(TBaseSingleInstance)
   private
   private
     FGlobal: Boolean;
     FGlobal: Boolean;
-    FID: string;
+    FID: Ansistring;
     FServer: TIPCServer;
     FServer: TIPCServer;
     FClient: TIPCClient;
     FClient: TIPCClient;
     FOnServerReceivedCustomRequest: TSingleInstanceReceivedCustomMessage;
     FOnServerReceivedCustomRequest: TSingleInstanceReceivedCustomMessage;
     procedure SetGlobal(const aGlobal: Boolean);
     procedure SetGlobal(const aGlobal: Boolean);
-    procedure SetID(const aID: string);
+    procedure SetID(const aID: Ansistring);
   protected
   protected
     procedure DoServerReceivedCustomRequest(const aMsgID: Integer; const aMsgType: Integer; const aStream: TStream);
     procedure DoServerReceivedCustomRequest(const aMsgID: Integer; const aMsgType: Integer; const aStream: TStream);
     function GetIsClient: Boolean; override;
     function GetIsClient: Boolean; override;
@@ -60,7 +60,7 @@ type
     procedure ServerPostCustomResponse(const aRequestID: Integer; const aMsgType: Integer; const aStream: TStream);
     procedure ServerPostCustomResponse(const aRequestID: Integer; const aMsgType: Integer; const aStream: TStream);
     function ClientPeekCustomResponse(const aStream: TStream; out outMsgType: Integer): Boolean;
     function ClientPeekCustomResponse(const aStream: TStream; out outMsgType: Integer): Boolean;
   public
   public
-    property ID: string read FID write SetID;
+    property ID: AnsiString  read FID write SetID;
     property Global: Boolean read FGlobal write SetGlobal;
     property Global: Boolean read FGlobal write SetGlobal;
 
 
     property OnServerReceivedCustomRequest: TSingleInstanceReceivedCustomMessage read FOnServerReceivedCustomRequest write FOnServerReceivedCustomRequest;
     property OnServerReceivedCustomRequest: TSingleInstanceReceivedCustomMessage read FOnServerReceivedCustomRequest write FOnServerReceivedCustomRequest;
@@ -249,7 +249,7 @@ begin
   FGlobal := aGlobal;
   FGlobal := aGlobal;
 end;
 end;
 
 
-procedure TAdvancedSingleInstance.SetID(const aID: string);
+procedure TAdvancedSingleInstance.SetID(const aID: Ansistring);
 begin
 begin
   if FID = aID then Exit;
   if FID = aID then Exit;
   if Assigned(FServer) or Assigned(FClient) then
   if Assigned(FServer) or Assigned(FClient) then

+ 2 - 2
packages/fcl-base/src/ascii85.pp

@@ -138,7 +138,7 @@ begin
     For I:=FCount+1 downto 0 do
     For I:=FCount+1 downto 0 do
       begin
       begin
       Inc(j);
       Inc(j);
-      S[J]:=Char(Buf[i]+Ord('!'));
+      S[J]:=AnsiChar(Buf[i]+Ord('!'));
       SetLength(S,J);
       SetLength(S,J);
       Inc(FPos);
       Inc(FPos);
       If (FPos>FWidth) then
       If (FPos>FWidth) then
@@ -162,7 +162,7 @@ Const
   Boundary2 = slinebreak+Boundary1;
   Boundary2 = slinebreak+Boundary1;
   
   
 Var
 Var
-  S : String;
+  S : Ansistring;
 
 
 begin
 begin
   If FCount>0 then
   If FCount>0 then

+ 12 - 12
packages/fcl-base/src/base64.pp

@@ -51,7 +51,7 @@ type
    * - 'MIME mode':
    * - 'MIME mode':
    *    - follows RFC2045
    *    - follows RFC2045
    *    - ignores any characters outside of base64 alphabet
    *    - ignores any characters outside of base64 alphabet
-   *    - takes any '=' as end of string
+   *    - takes any '=' as end of
    *    - handles apparently truncated input streams gracefully
    *    - handles apparently truncated input streams gracefully
    *)
    *)
   TBase64DecodingMode = (bdmStrict, bdmMIME);
   TBase64DecodingMode = (bdmStrict, bdmMIME);
@@ -86,8 +86,8 @@ type
   EBase64DecodingException = class(Exception)
   EBase64DecodingException = class(Exception)
   end;
   end;
 
 
-function EncodeStringBase64(const s:string):String;
-function DecodeStringBase64(const s:string;strict:boolean=false):String;
+function EncodeStringBase64(const s: AnsiString): AnsiString;
+function DecodeStringBase64(const s: AnsiString;strict:boolean=false): AnsiString;
 
 
 implementation
 implementation
 
 
@@ -99,7 +99,7 @@ const
   SStrictInputTruncated   = 'Input stream was truncated at non-4 byte boundary';
   SStrictInputTruncated   = 'Input stream was truncated at non-4 byte boundary';
   SStrictMisplacedPadChar = 'Unexpected padding character ''='' before end of input stream';
   SStrictMisplacedPadChar = 'Unexpected padding character ''='' before end of input stream';
 
 
-  EncodingTable: PChar =
+  EncodingTable: PAnsiChar =
     'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
     'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
 
 
 const
 const
@@ -129,7 +129,7 @@ const
 function TBase64EncodingStream.Flush : Boolean;
 function TBase64EncodingStream.Flush : Boolean;
 
 
 var
 var
-  WriteBuf: array[0..3] of Char;
+  WriteBuf: array[0..3] of AnsiChar;
 begin
 begin
   // Fill output to multiple of 4
   // Fill output to multiple of 4
   case (TotalBytesProcessed mod 3) of
   case (TotalBytesProcessed mod 3) of
@@ -166,7 +166,7 @@ function TBase64EncodingStream.Write(const Buffer; Count: Longint): Longint;
 var
 var
   ReadNow: LongInt;
   ReadNow: LongInt;
   p: Pointer;
   p: Pointer;
-  WriteBuf: array[0..3] of Char;
+  WriteBuf: array[0..3] of AnsiChar;
 begin
 begin
   Inc(TotalBytesProcessed, Count);
   Inc(TotalBytesProcessed, Count);
   Result := Count;
   Result := Count;
@@ -214,12 +214,12 @@ end;
 
 
 function TBase64DecodingStream.GetSize: Int64;
 function TBase64DecodingStream.GetSize: Int64;
 var
 var
-  endBytes: array[0..1] of Char;
+  endBytes: array[0..1] of AnsiChar;
   ipos, isize: Int64;
   ipos, isize: Int64;
-  scanBuf: array[0..1023] of Char;
+  scanBuf: array[0..1023] of AnsiChar;
   count: LongInt;
   count: LongInt;
   i: Integer;
   i: Integer;
-  c: Char;
+  c: AnsiChar;
 begin
 begin
   // Note: this method only works on Seekable Sources (for bdmStrict we also get the Size property)
   // Note: this method only works on Seekable Sources (for bdmStrict we also get the Size property)
   if DecodedSize<>-1 then Exit(DecodedSize);
   if DecodedSize<>-1 then Exit(DecodedSize);
@@ -417,10 +417,10 @@ begin
   raise EStreamError.Create('Invalid stream operation');
   raise EStreamError.Create('Invalid stream operation');
 end;
 end;
 
 
-function DecodeStringBase64(const s:string;strict:boolean=false):String;
+function DecodeStringBase64(const s: AnsiString;strict:boolean=false): AnsiString;
 
 
 var 
 var 
-  SD : String;
+  SD : Ansistring;
   Instream, 
   Instream, 
   Outstream : TStringStream;
   Outstream : TStringStream;
   Decoder   : TBase64DecodingStream;
   Decoder   : TBase64DecodingStream;
@@ -452,7 +452,7 @@ begin
     end;
     end;
 end;
 end;
 
 
-function EncodeStringBase64(const s:string):String;
+function EncodeStringBase64(const s: AnsiString): AnsiString;
 
 
 var
 var
   Outstream : TStringStream;
   Outstream : TStringStream;

+ 2 - 2
packages/fcl-base/src/basenenc.pp

@@ -97,7 +97,7 @@ Function Base64 : TAlphabetEncoder;
 Function Base64URL : TAlphabetEncoder;
 Function Base64URL : TAlphabetEncoder;
 Function GetStandardEncoder(aEncoder : TStandardEncoder): TAlphabetEncoder;
 Function GetStandardEncoder(aEncoder : TStandardEncoder): TAlphabetEncoder;
 
 
-Function GetRawStringBytes(const S : String) : TBytes;
+Function GetRawStringBytes(const S : AnsiString) : TBytes;
 Function GetRawStringFromBytes(B : TBytes) : RawByteString;
 Function GetRawStringFromBytes(B : TBytes) : RawByteString;
 
 
 implementation
 implementation
@@ -115,7 +115,7 @@ begin
     Move(B[0],Result[1],L);
     Move(B[0],Result[1],L);
 end;
 end;
 
 
-Function GetRawStringBytes(Const S : String) : TBytes;
+Function GetRawStringBytes(Const S : AnsiString) : TBytes;
 
 
 Var
 Var
   L : Integer;
   L : Integer;

+ 5 - 5
packages/fcl-base/src/blowfish.pp

@@ -605,7 +605,7 @@ begin
   If FBufPos>0 then
   If FBufPos>0 then
     begin
     begin
     // Fill with nulls
     // Fill with nulls
-    FillChar(PChar(@FData)[FBufPos],SizeOf(FData)-FBufPos,#0);
+    FillChar(PAnsiChar(@FData)[FBufPos],SizeOf(FData)-FBufPos,#0);
     FBF.EnCrypt(FData);
     FBF.EnCrypt(FData);
     Source.Write(FData,SizeOf(FData));
     Source.Write(FData,SizeOf(FData));
     FBufPos := 0;
     FBufPos := 0;
@@ -624,7 +624,7 @@ begin
     MVsize:=Count;
     MVsize:=Count;
     If Mvsize>SizeOf(Fdata)-FBufPos then
     If Mvsize>SizeOf(Fdata)-FBufPos then
       mvsize:=SizeOf(FData)-FBufPos;
       mvsize:=SizeOf(FData)-FBufPos;
-    Move(PChar(@Buffer)[Result],PChar(@FData)[FBufPos],MVSize);
+    Move(PAnsiChar(@Buffer)[Result],PAnsiChar(@FData)[FBufPos],MVSize);
     If FBufPos+mvSize=Sizeof(FData) then
     If FBufPos+mvSize=Sizeof(FData) then
       begin
       begin
       // Empty buffer.
       // Empty buffer.
@@ -679,9 +679,9 @@ begin
       mvSize:=FBufPos;
       mvSize:=FBufPos;
       If MvSize>count then
       If MvSize>count then
         mvsize:=Count;
         mvsize:=Count;
-      Move(PChar(@FData)[0],PChar(@Buffer)[Result],MVSize);
+      Move(PAnsiChar(@FData)[0],PAnsiChar(@Buffer)[Result],MVSize);
       If ((Sizeof(FData)-MvSize)>0) then
       If ((Sizeof(FData)-MvSize)>0) then
-        Move(PChar(@FData)[mvSize],PChar(@FData)[0],Sizeof(FData)-MvSize);
+        Move(PAnsiChar(@FData)[mvSize],PAnsiChar(@FData)[0],Sizeof(FData)-MvSize);
       Dec(Count,mvsize);
       Dec(Count,mvsize);
       Inc(Result,mvsize);
       Inc(Result,mvsize);
       FBufPos:=FBufPos-MvSize;
       FBufPos:=FBufPos-MvSize;
@@ -694,7 +694,7 @@ begin
         begin
         begin
         If MvSize<SizeOf(FData) Then
         If MvSize<SizeOf(FData) Then
           // Fill with nulls
           // Fill with nulls
-          FillChar(PChar(@FData)[mvsize],SizeOf(FData)-mvsize,#0);
+          FillChar(PAnsiChar(@FData)[mvsize],SizeOf(FData)-mvsize,#0);
         FBF.Decrypt(FData);
         FBF.Decrypt(FData);
         FBufPos:=SizeOf(FData);
         FBufPos:=SizeOf(FData);
         end
         end

+ 10 - 10
packages/fcl-base/src/bufstream.pp

@@ -183,10 +183,10 @@ procedure TBufStream.FillBuffer;
 
 
 Var
 Var
   RCount : Integer;
   RCount : Integer;
-  P : PChar;
+  P : PAnsiChar;
 
 
 begin
 begin
-  P:=Pchar(FBuffer);
+  P:=PAnsiChar(FBuffer);
   // Reset at beginning if empty.
   // Reset at beginning if empty.
   If (FBufSize-FBufPos)<=0 then
   If (FBufSize-FBufPos)<=0 then
    begin
    begin
@@ -207,10 +207,10 @@ procedure TBufStream.FlushBuffer;
 
 
 Var
 Var
   WCount : Integer;
   WCount : Integer;
-  P : PChar;
+  P : PAnsiChar;
 
 
 begin
 begin
-  P:=Pchar(FBuffer);
+  P:=PAnsiChar(FBuffer);
   Inc(P,FBufPos);
   Inc(P,FBufPos);
   WCount:=1;
   WCount:=1;
   While (WCount<>0) and ((FBufSize-FBufPos)>0) do
   While (WCount<>0) and ((FBufSize-FBufPos)>0) do
@@ -258,12 +258,12 @@ end;
 function TReadBufStream.Read(var ABuffer; ACount: LongInt): Integer;
 function TReadBufStream.Read(var ABuffer; ACount: LongInt): Integer;
 
 
 Var
 Var
-  P,PB : PChar;
+  P,PB : PAnsiChar;
   Avail,MSize,RCount : Integer;
   Avail,MSize,RCount : Integer;
 
 
 begin
 begin
   Result:=0;
   Result:=0;
-  P:=PChar(@ABuffer);
+  P:=PAnsiChar(@ABuffer);
   Avail:=1;
   Avail:=1;
   While (Result<ACount) and (Avail>0) do
   While (Result<ACount) and (Avail>0) do
     begin
     begin
@@ -275,7 +275,7 @@ begin
       MSize:=ACount-Result;
       MSize:=ACount-Result;
       If (MSize>Avail) then
       If (MSize>Avail) then
         MSize:=Avail;
         MSize:=Avail;
-      PB:=PChar(FBuffer);
+      PB:=PAnsiChar(FBuffer);
       Inc(PB,FBufPos);
       Inc(PB,FBufPos);
       Move(PB^,P^,MSIze);
       Move(PB^,P^,MSIze);
       Inc(FBufPos,MSize);
       Inc(FBufPos,MSize);
@@ -306,12 +306,12 @@ end;
 function TWriteBufStream.Write(const ABuffer; ACount: LongInt): Integer;
 function TWriteBufStream.Write(const ABuffer; ACount: LongInt): Integer;
 
 
 Var
 Var
-  P,PB : PChar;
+  P,PB : PAnsiChar;
   Avail,MSize,RCount : Integer;
   Avail,MSize,RCount : Integer;
 
 
 begin
 begin
   Result:=0;
   Result:=0;
-  P:=PChar(@ABuffer);
+  P:=PAnsiChar(@ABuffer);
   While (Result<ACount) do
   While (Result<ACount) do
     begin
     begin
     If (FBufSize=FCapacity) then
     If (FBufSize=FCapacity) then
@@ -320,7 +320,7 @@ begin
     MSize:=ACount-Result;
     MSize:=ACount-Result;
     If (MSize>Avail) then
     If (MSize>Avail) then
       MSize:=Avail;
       MSize:=Avail;
-    PB:=PChar(FBuffer);
+    PB:=PAnsiChar(FBuffer);
     Inc(PB,FBufSize);
     Inc(PB,FBufSize);
     Move(P^,PB^,MSIze);
     Move(P^,PB^,MSIze);
     Inc(FBufSize,MSize);
     Inc(FBufSize,MSize);

+ 75 - 75
packages/fcl-base/src/contnrs.pp

@@ -220,7 +220,7 @@ type
     FHashTable    : PHashTable;
     FHashTable    : PHashTable;
     FHashCapacity : Integer;
     FHashCapacity : Integer;
     { Strings }
     { Strings }
-    FStrs     : PChar;
+    FStrs     : PAnsiChar;
     FStrCount,
     FStrCount,
     FStrCapacity : Integer;
     FStrCapacity : Integer;
     Function InternalFind(AHash:LongWord;const AName:shortstring;out PrevIndex:Integer):Integer;
     Function InternalFind(AHash:LongWord;const AName:shortstring;out PrevIndex:Integer):Integer;
@@ -245,7 +245,7 @@ type
     Function HashOfIndex(Index: Integer): LongWord; {$ifdef CCLASSESINLINE}inline;{$endif}
     Function HashOfIndex(Index: Integer): LongWord; {$ifdef CCLASSESINLINE}inline;{$endif}
     Function GetNextCollision(Index: Integer): Integer;
     Function GetNextCollision(Index: Integer): Integer;
     Procedure Delete(Index: Integer);
     Procedure Delete(Index: Integer);
-    class Procedure Error(const Msg: string; Data: PtrInt);
+    class Procedure Error(const Msg: AnsiString; Data: PtrInt);
     Function Expand: TFPHashList;
     Function Expand: TFPHashList;
     Function Extract(item: Pointer): Pointer;
     Function Extract(item: Pointer): Pointer;
     Function IndexOf(Item: Pointer): Integer;
     Function IndexOf(Item: Pointer): Integer;
@@ -262,7 +262,7 @@ type
     property Count: Integer read FCount write SetCount;
     property Count: Integer read FCount write SetCount;
     property Items[Index: Integer]: Pointer read Get write Put; default;
     property Items[Index: Integer]: Pointer read Get write Put; default;
     property List: PHashItemList read FHashList;
     property List: PHashItemList read FHashList;
-    property Strs: PChar read FStrs;
+    property Strs: PAnsiChar read FStrs;
   end;
   end;
 
 
 
 
@@ -340,18 +340,18 @@ type
 
 
   { Must return a Longword value in the range 0..TableSize,
   { Must return a Longword value in the range 0..TableSize,
    usually via a mod operator;  }
    usually via a mod operator;  }
-  THashFunction = Function(const S: string; const TableSize: Longword): Longword;
+  THashFunction = Function(const S: AnsiString; const TableSize: Longword): Longword;
 
 
 
 
   { THTNode }
   { THTNode }
 
 
   THTCustomNode = class(TObject)
   THTCustomNode = class(TObject)
   private
   private
-    FKey: string;
+    FKey: AnsiString;
   public
   public
-    constructor CreateWith(const AString: String);
-    Function HasKey(const AKey: string): boolean;
-    property Key: string read FKey;
+    constructor CreateWith(const AString: AnsiString);
+    Function HasKey(const AKey: AnsiString): boolean;
+    property Key: AnsiString read FKey;
   end;
   end;
   THTCustomNodeClass = Class of THTCustomNode;
   THTCustomNodeClass = Class of THTCustomNode;
 
 
@@ -374,20 +374,20 @@ type
   protected
   protected
     FHashTableSize: Longword;
     FHashTableSize: Longword;
     Function Chain(const index: Longword):TFPObjectList;
     Function Chain(const index: Longword):TFPObjectList;
-    Function CreateNewNode(const aKey : string) : THTCustomNode; virtual; abstract;
+    Function CreateNewNode(const aKey : AnsiString) : THTCustomNode; virtual; abstract;
     Procedure AddNode(ANode : THTCustomNode); virtual; abstract;
     Procedure AddNode(ANode : THTCustomNode); virtual; abstract;
     Function ChainLength(const ChainIndex: Longword): Longword; virtual;
     Function ChainLength(const ChainIndex: Longword): Longword; virtual;
-    Function FindOrCreateNew(const aKey: string): THTCustomNode; virtual;
+    Function FindOrCreateNew(const aKey: AnsiString): THTCustomNode; virtual;
     Procedure SetHashFunction(AHashFunction: THashFunction); virtual;
     Procedure SetHashFunction(AHashFunction: THashFunction); virtual;
-    Function FindChainForAdd(Const aKey : String) : TFPObjectList;
+    Function FindChainForAdd(Const aKey : AnsiString) : TFPObjectList;
   public
   public
     constructor Create;
     constructor Create;
     constructor CreateWith(AHashTableSize: Longword; aHashFunc: THashFunction);
     constructor CreateWith(AHashTableSize: Longword; aHashFunc: THashFunction);
     destructor Destroy; override;
     destructor Destroy; override;
     Procedure ChangeTableSize(const ANewSize: Longword); virtual;
     Procedure ChangeTableSize(const ANewSize: Longword); virtual;
     Procedure Clear; virtual;
     Procedure Clear; virtual;
-    Procedure Delete(const aKey: string); virtual;
-    Function Find(const aKey: string): THTCustomNode;
+    Procedure Delete(const aKey: AnsiString); virtual;
+    Function Find(const aKey: AnsiString): THTCustomNode;
     Function IsEmpty: boolean;
     Function IsEmpty: boolean;
     property HashFunction: THashFunction read FHashFunction write SetHashFunction;
     property HashFunction: THashFunction read FHashFunction write SetHashFunction;
     property Count: Longword read FCount;
     property Count: Longword read FCount;
@@ -412,8 +412,8 @@ type
   // For compatibility
   // For compatibility
   THTNode = THTDataNode;
   THTNode = THTDataNode;
 
 
-  TDataIteratorMethod = Procedure(Item: Pointer; const Key: string; var Continue: Boolean) of object;
-  TDataIteratorCallBack = Procedure(Item: Pointer; const Key: string; var Continue: Boolean);
+  TDataIteratorMethod = Procedure(Item: Pointer; const Key: AnsiString; var Continue: Boolean) of object;
+  TDataIteratorCallBack = Procedure(Item: Pointer; const Key: AnsiString; var Continue: Boolean);
 
 
   // For compatibility
   // For compatibility
   TIteratorMethod = TDataIteratorMethod;
   TIteratorMethod = TDataIteratorMethod;
@@ -421,46 +421,46 @@ type
   TFPDataHashTable = Class(TFPCustomHashTable)
   TFPDataHashTable = Class(TFPCustomHashTable)
   Private
   Private
     FIteratorCallBack: TDataIteratorCallBack;
     FIteratorCallBack: TDataIteratorCallBack;
-    Procedure CallbackIterator(Item: Pointer; const Key: string; var Continue: Boolean);
+    Procedure CallbackIterator(Item: Pointer; const Key: AnsiString; var Continue: Boolean);
   Protected
   Protected
-    Function CreateNewNode(const aKey : String) : THTCustomNode; override;
+    Function CreateNewNode(const aKey : AnsiString) : THTCustomNode; override;
     Procedure AddNode(ANode : THTCustomNode); override;
     Procedure AddNode(ANode : THTCustomNode); override;
-    Procedure SetData(const index: string; const AValue: Pointer); virtual;
-    Function GetData(const index: string):Pointer; virtual;
+    Procedure SetData(const index: AnsiString; const AValue: Pointer); virtual;
+    Function GetData(const index: AnsiString):Pointer; virtual;
     Function ForEachCall(aMethod: TDataIteratorMethod): THTDataNode; virtual;
     Function ForEachCall(aMethod: TDataIteratorMethod): THTDataNode; virtual;
   Public
   Public
     Function Iterate(aMethod: TDataIteratorMethod): Pointer; virtual;
     Function Iterate(aMethod: TDataIteratorMethod): Pointer; virtual;
     Function Iterate(aMethod: TDataIteratorCallBack): Pointer; virtual;
     Function Iterate(aMethod: TDataIteratorCallBack): Pointer; virtual;
-    Procedure Add(const aKey: string; AItem: pointer); virtual;
-    property Items[const index: string]: Pointer read GetData write SetData; default;
+    Procedure Add(const aKey: AnsiString; AItem: pointer); virtual;
+    property Items[const index: AnsiString]: Pointer read GetData write SetData; default;
   end;
   end;
 
 
   { TFPStringHashTable : Hash table with simple strings as data }
   { TFPStringHashTable : Hash table with simple strings as data }
   THTStringNode = Class(THTCustomNode)
   THTStringNode = Class(THTCustomNode)
   Private
   Private
-    FData : String;
+    FData : AnsiString;
   public
   public
-    property Data: String read FData write FData;
+    property Data: AnsiString  read FData write FData;
   end;
   end;
   
   
-  TStringIteratorMethod = Procedure(Item: String; const Key: string; var Continue: Boolean) of object;
-  TStringIteratorCallback = Procedure(Item: String; const Key: string; var Continue: Boolean);
+  TStringIteratorMethod = Procedure(Item: AnsiString; const Key: AnsiString; var Continue: Boolean) of object;
+  TStringIteratorCallback = Procedure(Item: AnsiString; const Key: AnsiString; var Continue: Boolean);
 
 
   TFPStringHashTable = Class(TFPCustomHashTable)
   TFPStringHashTable = Class(TFPCustomHashTable)
   Private
   Private
     FIteratorCallBack: TStringIteratorCallback;
     FIteratorCallBack: TStringIteratorCallback;
-    Procedure CallbackIterator(Item: String; const Key: string; var Continue: Boolean);
+    Procedure CallbackIterator(Item: AnsiString; const Key: AnsiString; var Continue: Boolean);
   Protected
   Protected
-    Function CreateNewNode(const aKey : String) : THTCustomNode; override;
+    Function CreateNewNode(const aKey : AnsiString) : THTCustomNode; override;
     Procedure AddNode(ANode : THTCustomNode); override;
     Procedure AddNode(ANode : THTCustomNode); override;
-    Procedure SetData(const Index, AValue: string); virtual;
-    Function GetData(const index: string): String; virtual;
+    Procedure SetData(const Index, AValue: AnsiString); virtual;
+    Function GetData(const index: AnsiString): AnsiString; virtual;
     Function ForEachCall(aMethod: TStringIteratorMethod): THTStringNode; virtual;
     Function ForEachCall(aMethod: TStringIteratorMethod): THTStringNode; virtual;
   Public
   Public
-    Function Iterate(aMethod: TStringIteratorMethod): String; virtual;
-    Function Iterate(aMethod: TStringIteratorCallback): String; virtual;
-    Procedure Add(const aKey,aItem: string); virtual;
-    property Items[const index: string]: String read GetData write SetData; default;
+    Function Iterate(aMethod: TStringIteratorMethod): AnsiString; virtual;
+    Function Iterate(aMethod: TStringIteratorCallback): AnsiString; virtual;
+    Procedure Add(const aKey,aItem: AnsiString); virtual;
+    property Items[const index: AnsiString]: AnsiString read GetData write SetData; default;
   end;
   end;
 
 
   { TFPStringHashTable : Hash table with simple strings as data }
   { TFPStringHashTable : Hash table with simple strings as data }
@@ -478,34 +478,34 @@ type
     destructor Destroy; override;
     destructor Destroy; override;
   end;
   end;
 
 
-  TObjectIteratorMethod = Procedure(Item: TObject; const Key: string; var Continue: Boolean) of object;
-  TObjectIteratorCallback = Procedure(Item: TObject; const Key: string; var Continue: Boolean);
+  TObjectIteratorMethod = Procedure(Item: TObject; const Key: AnsiString; var Continue: Boolean) of object;
+  TObjectIteratorCallback = Procedure(Item: TObject; const Key: AnsiString; var Continue: Boolean);
 
 
   TFPObjectHashTable = Class(TFPCustomHashTable)
   TFPObjectHashTable = Class(TFPCustomHashTable)
   Private
   Private
     FOwnsObjects : Boolean;
     FOwnsObjects : Boolean;
     FIteratorCallBack: TObjectIteratorCallback;
     FIteratorCallBack: TObjectIteratorCallback;
-    procedure CallbackIterator(Item: TObject; const Key: string; var Continue: Boolean);
+    procedure CallbackIterator(Item: TObject; const Key: AnsiString; var Continue: Boolean);
   Protected
   Protected
-    Function CreateNewNode(const aKey : String) : THTCustomNode; override;
+    Function CreateNewNode(const aKey : AnsiString) : THTCustomNode; override;
     Procedure AddNode(ANode : THTCustomNode); override;
     Procedure AddNode(ANode : THTCustomNode); override;
-    Procedure SetData(const Index: string; AObject : TObject); virtual;
-    Function GetData(const index: string): TObject; virtual;
+    Procedure SetData(const Index: AnsiString; AObject : TObject); virtual;
+    Function GetData(const index: AnsiString): TObject; virtual;
     Function ForEachCall(aMethod: TObjectIteratorMethod): THTObjectNode; virtual;
     Function ForEachCall(aMethod: TObjectIteratorMethod): THTObjectNode; virtual;
   Public
   Public
     constructor Create(AOwnsObjects : Boolean = True);
     constructor Create(AOwnsObjects : Boolean = True);
     constructor CreateWith(AHashTableSize: Longword; aHashFunc: THashFunction; AOwnsObjects : Boolean = True);
     constructor CreateWith(AHashTableSize: Longword; aHashFunc: THashFunction; AOwnsObjects : Boolean = True);
     Function Iterate(aMethod: TObjectIteratorMethod): TObject; virtual;
     Function Iterate(aMethod: TObjectIteratorMethod): TObject; virtual;
     Function Iterate(aMethod: TObjectIteratorCallback): TObject; virtual;
     Function Iterate(aMethod: TObjectIteratorCallback): TObject; virtual;
-    Procedure Add(const aKey: string; AItem : TObject); virtual;
-    property Items[const index: string]: TObject read GetData write SetData; default;
+    Procedure Add(const aKey: AnsiString; AItem : TObject); virtual;
+    property Items[const index:Ansistring ]: TObject read GetData write SetData; default;
     Property OwnsObjects : Boolean Read FOwnsObjects;
     Property OwnsObjects : Boolean Read FOwnsObjects;
   end;
   end;
 
 
   EDuplicate = class(Exception);
   EDuplicate = class(Exception);
   EKeyNotFound = class(Exception);
   EKeyNotFound = class(Exception);
 
 
-  Function RSHash(const S: string; const TableSize: Longword): Longword;
+  Function RSHash(const S: AnsiString; const TableSize: Longword): Longword;
 
 
 { ---------------------------------------------------------------------
 { ---------------------------------------------------------------------
     Bucket lists as in Delphi
     Bucket lists as in Delphi
@@ -546,7 +546,7 @@ Type
     Function AddItem(ABucket: Integer; AItem, AData: Pointer): Pointer; virtual;
     Function AddItem(ABucket: Integer; AItem, AData: Pointer): Pointer; virtual;
     Function BucketFor(AItem: Pointer): Integer; virtual; abstract;
     Function BucketFor(AItem: Pointer): Integer; virtual; abstract;
     Function DeleteItem(ABucket: Integer; AIndex: Integer): Pointer; virtual;
     Function DeleteItem(ABucket: Integer; AIndex: Integer): Pointer; virtual;
-    Procedure Error(Msg : String; Args : Array of Const);
+    Procedure Error(Msg : AnsiString; Args : Array of Const);
     Function FindItem(AItem: Pointer; out ABucket, AIndex: Integer): Boolean; virtual;
     Function FindItem(AItem: Pointer; out ABucket, AIndex: Integer): Boolean; virtual;
     property Buckets: TBucketArray read FBuckets;
     property Buckets: TBucketArray read FBuckets;
     property BucketCount: Integer read GetBucketCount write SetBucketCount;
     property BucketCount: Integer read GetBucketCount write SetBucketCount;
@@ -1158,7 +1158,7 @@ end;
 
 
     Function FPHash(const s:shortstring):LongWord;
     Function FPHash(const s:shortstring):LongWord;
     var
     var
-      p,pmax : PChar;
+      p,pmax : PAnsiChar;
     begin
     begin
 {$push}
 {$push}
 {$Q-}
 {$Q-}
@@ -1173,9 +1173,9 @@ end;
 {$pop}
 {$pop}
     end;
     end;
 
 
-    Function FPHash(P: PChar; Len: Integer): LongWord;
+    Function FPHash(P: PAnsiChar; Len: Integer): LongWord;
     var
     var
-      pmax : PChar;
+      pmax : PAnsiChar;
     begin
     begin
 {$push}
 {$push}
 {$Q-}
 {$Q-}
@@ -1418,7 +1418,7 @@ begin
     Self.Delete(Result);
     Self.Delete(Result);
 end;
 end;
 
 
-class Procedure TFPHashList.Error(const Msg: string; Data: PtrInt);
+class Procedure TFPHashList.Error(const Msg: AnsiString; Data: PtrInt);
 begin
 begin
   raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
   raise EListError.CreateFmt(Msg,[Data]) at get_caller_addr(get_frame), get_caller_frame(get_frame);
 end;
 end;
@@ -1474,11 +1474,11 @@ Function TFPHashList.InternalFind(AHash:LongWord;const AName:shortstring;out Pre
 var
 var
   HashIndex : Integer;
   HashIndex : Integer;
   Len,
   Len,
-  LastChar  : Char;
+  LastChar  : AnsiChar;
 begin
 begin
   HashIndex:=AHash mod LongWord(FHashCapacity);
   HashIndex:=AHash mod LongWord(FHashCapacity);
   Result:=FHashTable^[HashIndex];
   Result:=FHashTable^[HashIndex];
-  Len:=Char(Length(AName));
+  Len:=AnsiChar(Length(AName));
   LastChar:=AName[Byte(Len)];
   LastChar:=AName[Byte(Len)];
   PrevIndex:=-1;
   PrevIndex:=-1;
   while Result<>-1 do
   while Result<>-1 do
@@ -1564,7 +1564,7 @@ var
   i : integer;
   i : integer;
   pdest,
   pdest,
   psrc : PHashItem;
   psrc : PHashItem;
-  FOldStr : Pchar;
+  FOldStr : PAnsiChar;
 begin
 begin
   NewCount:=0;
   NewCount:=0;
   psrc:=@FHashList^[0];
   psrc:=@FHashList^[0];
@@ -1930,7 +1930,7 @@ end;
 { Default hash Function }
 { Default hash Function }
 
 
 {$IFDEF RangeChecking}{$R-}{$ENDIF}
 {$IFDEF RangeChecking}{$R-}{$ENDIF}
-Function RSHash(const S: string; const TableSize: Longword): Longword;
+Function RSHash(const S: AnsiString; const TableSize: Longword): Longword;
 const
 const
   b = 378551;
   b = 378551;
 var
 var
@@ -1951,13 +1951,13 @@ end;
 
 
 { THTNode }
 { THTNode }
 
 
-constructor THTCustomNode.CreateWith(const AString: string);
+constructor THTCustomNode.CreateWith(const AString: AnsiString);
 begin
 begin
   inherited Create;
   inherited Create;
   FKey:=AString;
   FKey:=AString;
 end;
 end;
 
 
-Function THTCustomNode.HasKey(const AKey: string): boolean;
+Function THTCustomNode.HasKey(const AKey: AnsiString): boolean;
 begin
 begin
   Result:=(AKey=FKey);
   Result:=(AKey=FKey);
 end;
 end;
@@ -2056,7 +2056,7 @@ begin
     raise Exception.Create(NotEmptyMsg);
     raise Exception.Create(NotEmptyMsg);
 end;
 end;
 
 
-Function TFPCustomHashTable.Find(const aKey: string): THTCustomNode;
+Function TFPCustomHashTable.Find(const aKey: AnsiString): THTCustomNode;
 var
 var
   hashCode: Longword;
   hashCode: Longword;
   chn: TFPObjectList;
   chn: TFPObjectList;
@@ -2072,7 +2072,7 @@ begin
   Result:=nil;
   Result:=nil;
 end;
 end;
 
 
-Function TFPCustomHashTable.FindChainForAdd(Const aKey : String) : TFPObjectList;
+Function TFPCustomHashTable.FindChainForAdd(Const aKey : AnsiString) : TFPObjectList;
 var
 var
   hashCode: Longword;
   hashCode: Longword;
   i: Longword;
   i: Longword;
@@ -2095,7 +2095,7 @@ begin
 end;
 end;
 
 
 
 
-Procedure TFPCustomHashTable.Delete(const aKey: string);
+Procedure TFPCustomHashTable.Delete(const aKey: AnsiString);
 var
 var
   hashCode: Longword;
   hashCode: Longword;
   chn: TFPObjectList;
   chn: TFPObjectList;
@@ -2158,7 +2158,7 @@ begin
         Result:=ChainLength(i);
         Result:=ChainLength(i);
 end;
 end;
 
 
-Function TFPCustomHashTable.FindOrCreateNew(const aKey: string): THTCustomNode;
+Function TFPCustomHashTable.FindOrCreateNew(const aKey: AnsiString): THTCustomNode;
 var
 var
   hashCode: Longword;
   hashCode: Longword;
   chn: TFPObjectList;
   chn: TFPObjectList;
@@ -2206,7 +2206,7 @@ end;
 
 
 { TFPDataHashTable }
 { TFPDataHashTable }
 
 
-Procedure TFPDataHashTable.Add(const aKey: string; aItem: pointer);
+Procedure TFPDataHashTable.Add(const aKey: AnsiString; aItem: pointer);
 var
 var
   chn: TFPObjectList;
   chn: TFPObjectList;
   NewNode: THtDataNode;
   NewNode: THtDataNode;
@@ -2217,7 +2217,7 @@ begin
   chn.Add(NewNode);
   chn.Add(NewNode);
 end;
 end;
 
 
-Function TFPDataHashTable.GetData(const Index: string): Pointer;
+Function TFPDataHashTable.GetData(const Index: AnsiString): Pointer;
 var
 var
   node: THTDataNode;
   node: THTDataNode;
 begin
 begin
@@ -2228,12 +2228,12 @@ begin
     Result:=nil;
     Result:=nil;
 end;
 end;
 
 
-Procedure TFPDataHashTable.SetData(const index: string; const AValue: Pointer);
+Procedure TFPDataHashTable.SetData(const index: AnsiString; const AValue: Pointer);
 begin
 begin
   THTDataNode(FindOrCreateNew(index)).Data:=AValue;
   THTDataNode(FindOrCreateNew(index)).Data:=AValue;
 end;
 end;
 
 
-Function TFPDataHashTable.CreateNewNode(const aKey : string) : THTCustomNode;
+Function TFPDataHashTable.CreateNewNode(const aKey : AnsiString) : THTCustomNode;
 
 
 begin
 begin
   Result:=THTDataNode.CreateWith(aKey);
   Result:=THTDataNode.CreateWith(aKey);
@@ -2250,7 +2250,7 @@ begin
     Result:=nil;
     Result:=nil;
 end;
 end;
 
 
-Procedure TFPDataHashTable.CallbackIterator(Item: Pointer; const Key: string; var Continue: Boolean);
+Procedure TFPDataHashTable.CallbackIterator(Item: Pointer; const Key: AnsiString; var Continue: Boolean);
 begin
 begin
   FIteratorCallBack(Item, Key, Continue);
   FIteratorCallBack(Item, Key, Continue);
 end;
 end;
@@ -2297,7 +2297,7 @@ begin
     Add(Key,Data);
     Add(Key,Data);
 end;
 end;
 
 
-Function TFPStringHashTable.GetData(const Index: string): String;
+Function TFPStringHashTable.GetData(const Index: AnsiString): AnsiString;
 var
 var
   node: THTStringNode;
   node: THTStringNode;
 begin
 begin
@@ -2308,12 +2308,12 @@ begin
     Result:='';
     Result:='';
 end;
 end;
 
 
-Procedure TFPStringHashTable.SetData(const index, AValue: string);
+Procedure TFPStringHashTable.SetData(const index, AValue: AnsiString);
 begin
 begin
   THTStringNode(FindOrCreateNew(index)).Data:=AValue;
   THTStringNode(FindOrCreateNew(index)).Data:=AValue;
 end;
 end;
 
 
-Procedure TFPStringHashTable.Add(const aKey, aItem: string);
+Procedure TFPStringHashTable.Add(const aKey, aItem: AnsiString);
 var
 var
   chn: TFPObjectList;
   chn: TFPObjectList;
   NewNode: THtStringNode;
   NewNode: THtStringNode;
@@ -2324,12 +2324,12 @@ begin
   chn.Add(NewNode);
   chn.Add(NewNode);
 end;
 end;
 
 
-Function TFPStringHashTable.CreateNewNode(const aKey : string) : THTCustomNode;
+Function TFPStringHashTable.CreateNewNode(const aKey : AnsiString) : THTCustomNode;
 begin
 begin
   Result:=THTStringNode.CreateWith(aKey);
   Result:=THTStringNode.CreateWith(aKey);
 end;
 end;
 
 
-Function TFPStringHashTable.Iterate(aMethod: TStringIteratorMethod): String;
+Function TFPStringHashTable.Iterate(aMethod: TStringIteratorMethod): AnsiString;
 var
 var
   N : THTStringNode;
   N : THTStringNode;
 begin
 begin
@@ -2340,12 +2340,12 @@ begin
     Result:='';
     Result:='';
 end;
 end;
 
 
-Procedure TFPStringHashTable.CallbackIterator(Item: String; const Key: string; var Continue: Boolean);
+Procedure TFPStringHashTable.CallbackIterator(Item: AnsiString; const Key: AnsiString; var Continue: Boolean);
 begin
 begin
   FIteratorCallBack(Item, Key, Continue);
   FIteratorCallBack(Item, Key, Continue);
 end;
 end;
 
 
-Function TFPStringHashTable.Iterate(aMethod: TStringIteratorCallback): String;
+Function TFPStringHashTable.Iterate(aMethod: TStringIteratorCallback): AnsiString;
 begin
 begin
   FIteratorCallBack := aMethod;
   FIteratorCallBack := aMethod;
   Result := Iterate(@CallbackIterator);
   Result := Iterate(@CallbackIterator);
@@ -2381,7 +2381,7 @@ begin
     Add(Key,Data);
     Add(Key,Data);
 end;
 end;
 
 
-Function TFPObjectHashTable.GetData(const Index: string): TObject;
+Function TFPObjectHashTable.GetData(const Index: AnsiString): TObject;
 var
 var
   node: THTObjectNode;
   node: THTObjectNode;
 begin
 begin
@@ -2392,12 +2392,12 @@ begin
     Result:=nil;
     Result:=nil;
 end;
 end;
 
 
-Procedure TFPObjectHashTable.SetData(const index : string; AObject : TObject);
+Procedure TFPObjectHashTable.SetData(const index : AnsiString; AObject : TObject);
 begin
 begin
   THTObjectNode(FindOrCreateNew(index)).Data:=AObject;
   THTObjectNode(FindOrCreateNew(index)).Data:=AObject;
 end;
 end;
 
 
-Procedure TFPObjectHashTable.Add(const aKey: string; AItem : TObject);
+Procedure TFPObjectHashTable.Add(const aKey: AnsiString; AItem : TObject);
 var
 var
   chn: TFPObjectList;
   chn: TFPObjectList;
   NewNode: THTObjectNode;
   NewNode: THTObjectNode;
@@ -2408,7 +2408,7 @@ begin
   chn.Add(NewNode);
   chn.Add(NewNode);
 end;
 end;
 
 
-Function TFPObjectHashTable.CreateNewNode(const aKey : string) : THTCustomNode;
+Function TFPObjectHashTable.CreateNewNode(const aKey : AnsiString) : THTCustomNode;
 begin
 begin
   if OwnsObjects then
   if OwnsObjects then
     Result:=THTOwnedObjectNode.CreateWith(aKey)
     Result:=THTOwnedObjectNode.CreateWith(aKey)
@@ -2428,7 +2428,7 @@ begin
     Result:=nil;
     Result:=nil;
 end;
 end;
 
 
-Procedure TFPObjectHashTable.CallbackIterator(Item: TObject; const Key: string; var Continue: Boolean);
+Procedure TFPObjectHashTable.CallbackIterator(Item: TObject; const Key: AnsiString; var Continue: Boolean);
 begin
 begin
   FIteratorCallBack(Item, Key, Continue);
   FIteratorCallBack(Item, Key, Continue);
 end;
 end;
@@ -2558,7 +2558,7 @@ begin
   Dec(B^.Count);
   Dec(B^.Count);
 end;
 end;
 
 
-Procedure TCustomBucketList.Error(Msg: String; Args: array of const);
+Procedure TCustomBucketList.Error(Msg: AnsiString; Args: array of const);
 begin
 begin
   raise ElistError.CreateFmt(Msg,Args);
   raise ElistError.CreateFmt(Msg,Args);
 end;
 end;

+ 10 - 7
packages/fcl-base/src/csvreadwrite.pp

@@ -37,7 +37,8 @@
 
 
 unit csvreadwrite;
 unit csvreadwrite;
 
 
-{$mode objfpc}{$H+}
+{$mode objfpc}
+{$H+}
 
 
 interface
 interface
 
 
@@ -211,7 +212,8 @@ begin
   DestLength := Length(AString);
   DestLength := Length(AString);
 
 
   Src := PChar(AString);
   Src := PChar(AString);
-  EndPos := Src + DestLength;
+  EndPos := Src;
+  Inc(EndPos,DestLength);
   while Src < EndPos do
   while Src < EndPos do
   begin
   begin
     if (Src^ = CR) then
     if (Src^ = CR) then
@@ -371,9 +373,9 @@ procedure TCSVParser.ParseQuotedValue;
 var
 var
   QuotationEnd: Boolean;
   QuotationEnd: Boolean;
 begin
 begin
-  NextChar; // skip opening quotation char
+  NextChar; // skip opening quotation AnsiChar
   repeat
   repeat
-    // read value up to next quotation char
+    // read value up to next quotation AnsiChar
     while not ((FCurrentChar = FQuoteChar) or EndOfFile) do
     while not ((FCurrentChar = FQuoteChar) or EndOfFile) do
     begin
     begin
       if EndOfLine then
       if EndOfLine then
@@ -386,7 +388,7 @@ begin
         NextChar;
         NextChar;
       end;
       end;
     end;
     end;
-    // skip quotation char (closing or escaping)
+    // skip quotation AnsiChar (closing or escaping)
     if not EndOfFile then
     if not EndOfFile then
       NextChar;
       NextChar;
     // check if it was escaping
     // check if it was escaping
@@ -553,6 +555,7 @@ var
   I: Integer;
   I: Integer;
   ValueLen: Integer;
   ValueLen: Integer;
   NeedQuotation: Boolean;
   NeedQuotation: Boolean;
+  S : String;
 begin
 begin
   ValueLen := Length(AValue);
   ValueLen := Length(AValue);
 
 
@@ -573,8 +576,8 @@ begin
   begin
   begin
     // double existing quotes
     // double existing quotes
     Result := FDoubleQuote;
     Result := FDoubleQuote;
-    Insert(StringReplace(AValue, FQuoteChar, FDoubleQuote, [rfReplaceAll]),
-      Result, 2);
+    S:=StringReplace(AValue, FQuoteChar, FDoubleQuote, [rfReplaceAll]);
+    Insert(S,Result, 2);
   end else
   end else
     Result := AValue;
     Result := AValue;
 end;
 end;

File diff suppressed because it is too large
+ 142 - 139
packages/fcl-base/src/fpexprpars.pp


+ 27 - 26
packages/fcl-base/src/gettext.pp

@@ -48,7 +48,7 @@ type
   TLongWordArray = array[0..(1 shl 30) div SizeOf(LongWord)] of LongWord;
   TLongWordArray = array[0..(1 shl 30) div SizeOf(LongWord)] of LongWord;
   PLongWordArray = ^TLongWordArray;
   PLongWordArray = ^TLongWordArray;
 
 
-  TPCharArray = array[0..(1 shl 30) div SizeOf(PChar)] of PChar;
+  TPCharArray = array[0..(1 shl 30) div SizeOf(PAnsiChar)] of PAnsiChar;
   PPCharArray = ^TPCharArray;
   PPCharArray = ^TPCharArray;
 
 
   TMOFile = class
   TMOFile = class
@@ -61,19 +61,19 @@ type
     constructor Create(const AFilename: String);
     constructor Create(const AFilename: String);
     constructor Create(AStream: TStream);
     constructor Create(AStream: TStream);
     destructor Destroy; override;
     destructor Destroy; override;
-    function Translate(AOrig: PChar; ALen: Integer; AHash: LongWord): String;
-    function Translate(const AOrig: String; AHash: LongWord): String;
-    function Translate(const AOrig: String): String;
+    function Translate(AOrig: PAnsiChar; ALen: Integer; AHash: LongWord): AnsiString;
+    function Translate(const AOrig: AnsiString; AHash: LongWord): AnsiString;
+    function Translate(const AOrig: AnsiString): AnsiString;
   end;
   end;
 
 
   EMOFileError = class(Exception);
   EMOFileError = class(Exception);
 
 
 
 
-  procedure GetLanguageIDs(var Lang, FallbackLang: string);
+  procedure GetLanguageIDs(var Lang, FallbackLang: AnsiString);
   procedure TranslateResourceStrings(AFile: TMOFile);
   procedure TranslateResourceStrings(AFile: TMOFile);
-  procedure TranslateUnitResourceStrings(const AUnitName:string; AFile: TMOFile);
-  procedure TranslateResourceStrings(const AFilename: String);
-  procedure TranslateUnitResourceStrings(const AUnitName:string; const AFilename: String);
+  procedure TranslateUnitResourceStrings(const AUnitName:AnsiString; AFile: TMOFile);
+  procedure TranslateResourceStrings(const AFilename: AnsiString);
+  procedure TranslateUnitResourceStrings(const AUnitName:AnsiString; const AFilename: AnsiString);
 
 
 
 
 implementation
 implementation
@@ -135,8 +135,8 @@ begin
 
 
   GetMem(OrigTable, header.nstrings * SizeOf(TMOStringInfo));
   GetMem(OrigTable, header.nstrings * SizeOf(TMOStringInfo));
   GetMem(TranslTable, header.nstrings * SizeOf(TMOStringInfo));
   GetMem(TranslTable, header.nstrings * SizeOf(TMOStringInfo));
-  GetMem(OrigStrings, header.nstrings * SizeOf(PChar));
-  GetMem(TranslStrings, header.nstrings * SizeOf(PChar));
+  GetMem(OrigStrings, header.nstrings * SizeOf(PAnsiChar));
+  GetMem(TranslStrings, header.nstrings * SizeOf(PAnsiChar));
 
 
 
 
   AStream.Position := header.OrigTabOffset;
   AStream.Position := header.OrigTabOffset;
@@ -157,7 +157,7 @@ begin
     AStream.Position := OrigTable^[i].offset;
     AStream.Position := OrigTable^[i].offset;
 {    SetLength(s, OrigTable^[i].length);
 {    SetLength(s, OrigTable^[i].length);
     AStream.Read(s[1], OrigTable^[i].length);
     AStream.Read(s[1], OrigTable^[i].length);
-    OrigStrings^[i] := StrNew(PChar(s));}
+    OrigStrings^[i] := StrNew(PAnsiChar(s));}
     GetMem(OrigStrings^[i], OrigTable^[i].length + 1);
     GetMem(OrigStrings^[i], OrigTable^[i].length + 1);
     AStream.Read(OrigStrings^[i]^, OrigTable^[i].length);
     AStream.Read(OrigStrings^[i]^, OrigTable^[i].length);
     OrigStrings^[i][OrigTable^[i].length] := #0;
     OrigStrings^[i][OrigTable^[i].length] := #0;
@@ -168,7 +168,7 @@ begin
     AStream.Position := TranslTable^[i].offset;
     AStream.Position := TranslTable^[i].offset;
 {    SetLength(s, TranslTable^[i].length);
 {    SetLength(s, TranslTable^[i].length);
     AStream.Read(s[1], TranslTable^[i].length);
     AStream.Read(s[1], TranslTable^[i].length);
-    TranslStrings^[i] := StrNew(PChar(s));}
+    TranslStrings^[i] := StrNew(PAnsiChar(s));}
     GetMem(TranslStrings^[i], TranslTable^[i].length+1);
     GetMem(TranslStrings^[i], TranslTable^[i].length+1);
     AStream.Read(TranslStrings^[i]^, TranslTable^[i].length);
     AStream.Read(TranslStrings^[i]^, TranslTable^[i].length);
     TranslStrings^[i][TranslTable^[i].length] := #0;
     TranslStrings^[i][TranslTable^[i].length] := #0;
@@ -212,7 +212,7 @@ begin
   inherited Destroy;
   inherited Destroy;
 end;
 end;
 
 
-function TMOFile.Translate(AOrig: PChar; ALen: Integer; AHash: LongWord): String;
+function TMOFile.Translate(AOrig: PAnsiChar; ALen: Integer; AHash: LongWord):AnsiString ;
 var
 var
   idx, incr, nstr: LongWord;
   idx, incr, nstr: LongWord;
 begin
 begin
@@ -244,12 +244,13 @@ begin
   end;
   end;
 end;
 end;
 
 
-function TMOFile.Translate(const AOrig: String; AHash: LongWord): String;
+function TMOFile.Translate(const AOrig:AnsiString ; AHash: LongWord): AnsiString;
 begin
 begin
-  Result := Translate(PChar(AOrig), Length(AOrig), AHash);
+  Result := Translate(PAnsiChar(AOrig), Length(AOrig), AHash);
 end;
 end;
 
 
-function TMOFile.Translate(Const AOrig: String): String;
+function TMOFile.Translate(const AOrig:AnsiString ):AnsiString ;
+
 begin
 begin
   Result := Translate(AOrig, Hash(AOrig));
   Result := Translate(AOrig, Hash(AOrig));
 end;
 end;
@@ -278,17 +279,17 @@ begin
 end;
 end;
 
 
 
 
-procedure TranslateUnitResourceStrings(const AUnitName:string; AFile: TMOFile);
+procedure TranslateUnitResourceStrings(const AUnitName:AnsiString; AFile: TMOFile);
 begin
 begin
   SetUnitResourceStrings(AUnitName,@Translate,AFile);
   SetUnitResourceStrings(AUnitName,@Translate,AFile);
 end;
 end;
 
 
 
 
 {$ifdef windows}
 {$ifdef windows}
-procedure GetLanguageIDs(var Lang, FallbackLang: string);
+procedure GetLanguageIDs(var Lang, FallbackLang:AnsiString );
 var
 var
-  Buffer: array[1..4] of {$ifdef Wince}WideChar{$else}char{$endif};
-  Country: string;
+  Buffer: array[1..4] of {$ifdef Wince}WideChar{$else}AnsiChar{$endif};
+  Country: ;
   UserLCID: LCID;
   UserLCID: LCID;
 begin
 begin
   //defaults
   //defaults
@@ -316,7 +317,7 @@ end;
 
 
 {$else}
 {$else}
 
 
-procedure GetLanguageIDs(var Lang, FallbackLang: string);
+procedure GetLanguageIDs(var Lang, FallbackLang: AnsiString);
 begin
 begin
   FallbackLang:='';
   FallbackLang:='';
   lang := GetEnvironmentVariable('LC_ALL');
   lang := GetEnvironmentVariable('LC_ALL');
@@ -334,11 +335,11 @@ begin
 end;
 end;
 {$endif}
 {$endif}
 
 
-procedure TranslateResourceStrings(const AFilename: String);
+procedure TranslateResourceStrings(const AFilename: AnsiString);
 var
 var
   mo: TMOFile;
   mo: TMOFile;
-  lang, FallbackLang: String;
-  fn: String;
+  lang, FallbackLang: AnsiString;
+  fn: AnsiString;
 begin
 begin
   GetLanguageIDs(Lang, FallbackLang);
   GetLanguageIDs(Lang, FallbackLang);
   fn:=Format(AFilename, [FallbackLang]);
   fn:=Format(AFilename, [FallbackLang]);
@@ -374,10 +375,10 @@ begin
 end;
 end;
 
 
 
 
-procedure TranslateUnitResourceStrings(const AUnitName:string; const AFilename: String);
+procedure TranslateUnitResourceStrings(const AUnitName:AnsiString; const AFilename: AnsiString);
 var
 var
   mo: TMOFile;
   mo: TMOFile;
-  lang, FallbackLang: String;
+  lang, FallbackLang: AnsiString;
 begin
 begin
   GetLanguageIDs(Lang, FallbackLang);
   GetLanguageIDs(Lang, FallbackLang);
   try
   try

+ 1 - 1
packages/fcl-base/src/go32v2/custapp.inc

@@ -16,7 +16,7 @@
 Procedure SysGetEnvironmentList(List : TStrings;NamesOnly : Boolean);
 Procedure SysGetEnvironmentList(List : TStrings;NamesOnly : Boolean);
 
 
 Var
 Var
-  P : PPChar;
+  P : PPAnsiChar;
   S : String;
   S : String;
   I : Integer;
   I : Integer;
 
 

+ 5 - 5
packages/fcl-base/src/idea.pp

@@ -327,7 +327,7 @@ begin
   If FBufPos>0 then
   If FBufPos>0 then
     begin
     begin
     // Fill with nulls
     // Fill with nulls
-    FillChar(PChar(@FData)[FBufPos],SizeOf(FData)-FBufPos,#0);
+    FillChar(PAnsiChar(@FData)[FBufPos],SizeOf(FData)-FBufPos,#0);
     CipherIdea(Fdata,OutData,FKey);
     CipherIdea(Fdata,OutData,FKey);
     Source.Write(OutData,SizeOf(OutData));
     Source.Write(OutData,SizeOf(OutData));
     // fixed: Manual flush and then free will now work
     // fixed: Manual flush and then free will now work
@@ -348,7 +348,7 @@ begin
     MVsize:=Count;
     MVsize:=Count;
     If Mvsize>SizeOf(Fdata)-FBufPos then
     If Mvsize>SizeOf(Fdata)-FBufPos then
       mvsize:=SizeOf(FData)-FBufPos;
       mvsize:=SizeOf(FData)-FBufPos;
-    Move(PChar(@Buffer)[Result],PChar(@FData)[FBufPos],MVSize);
+    Move(PAnsiChar(@Buffer)[Result],PAnsiChar(@FData)[FBufPos],MVSize);
     If FBufPos+mvSize=Sizeof(FData) then
     If FBufPos+mvSize=Sizeof(FData) then
       begin
       begin
       // Empty buffer.
       // Empty buffer.
@@ -409,9 +409,9 @@ begin
       mvSize:=FBufPos;
       mvSize:=FBufPos;
       If MvSize>count then
       If MvSize>count then
         mvsize:=Count;
         mvsize:=Count;
-      Move(PChar(@FData)[0],PChar(@Buffer)[Result],MVSize);
+      Move(PAnsiChar(@FData)[0],PAnsiChar(@Buffer)[Result],MVSize);
       If ((Sizeof(FData)-MvSize)>0) then
       If ((Sizeof(FData)-MvSize)>0) then
-        Move(PChar(@FData)[mvSize],PChar(@FData)[0],Sizeof(FData)-MvSize);
+        Move(PAnsiChar(@FData)[mvSize],PAnsiChar(@FData)[0],Sizeof(FData)-MvSize);
       Dec(Count,mvsize);
       Dec(Count,mvsize);
       Inc(Result,mvsize);
       Inc(Result,mvsize);
       FBufPos:=FBufPos-MvSize;
       FBufPos:=FBufPos-MvSize;
@@ -424,7 +424,7 @@ begin
         begin
         begin
         If MvSize<SizeOf(InData) Then
         If MvSize<SizeOf(InData) Then
           // Fill with nulls
           // Fill with nulls
-          FillChar(PChar(@InData)[mvsize],SizeOf(InData)-mvsize,#0);
+          FillChar(PAnsiChar(@InData)[mvsize],SizeOf(InData)-mvsize,#0);
         CipherIdea(InData,FData,FKey);
         CipherIdea(InData,FData,FKey);
         FBufPos:=SizeOf(FData);
         FBufPos:=SizeOf(FData);
         end
         end

+ 14 - 14
packages/fcl-base/src/inicol.pp

@@ -26,12 +26,12 @@ Type
   TIniCollectionItem = Class(TCollectionItem)
   TIniCollectionItem = Class(TCollectionItem)
   protected
   protected
     function GetSectionName: String; virtual; abstract;
     function GetSectionName: String; virtual; abstract;
-    procedure SetSectionName(const Value: String); virtual; abstract;
+    procedure SetSectionName(const Value: String ); virtual; abstract;
   Public
   Public
     Procedure SaveToIni(Ini: TCustomInifile; Section : String); Virtual; Abstract;
     Procedure SaveToIni(Ini: TCustomInifile; Section : String); Virtual; Abstract;
     Procedure LoadFromIni(Ini: TCustomInifile; Section : String); Virtual; Abstract;
     Procedure LoadFromIni(Ini: TCustomInifile; Section : String); Virtual; Abstract;
     Procedure SaveToFile(const FileName : String; const Section : String);
     Procedure SaveToFile(const FileName : String; const Section : String);
-    Procedure LoadFromFile(const FileName : String; const Section : String);
+    Procedure LoadFromFile(const FileName :String ; const Section : String);
     Property SectionName : String Read GetSectionName Write SetSectionName;
     Property SectionName : String Read GetSectionName Write SetSectionName;
   end;
   end;
 
 
@@ -40,7 +40,7 @@ Type
     FFileName: String;
     FFileName: String;
     FGlobalSection: String;
     FGlobalSection: String;
   protected
   protected
-    FPrefix: String;  // Descendent must set this.
+    FPrefix:String ;  // Descendent must set this.
     FSectionPrefix : String;  // Descendent must set this too.
     FSectionPrefix : String;  // Descendent must set this too.
   Public
   Public
     Procedure Load;
     Procedure Load;
@@ -48,9 +48,9 @@ Type
     Procedure SaveToIni(Ini: TCustomInifile; Section : String); virtual;
     Procedure SaveToIni(Ini: TCustomInifile; Section : String); virtual;
     Procedure SaveToFile(const AFileName : String; const Section : String);
     Procedure SaveToFile(const AFileName : String; const Section : String);
     Procedure LoadFromIni(Ini: TCustomInifile; Section : String); virtual;
     Procedure LoadFromIni(Ini: TCustomInifile; Section : String); virtual;
-    Procedure LoadFromFile(const AFileName : String; const Section : String);
-    Property Prefix : String Read FPrefix;
-    Property SectionPrefix : String Read FSectionPrefix;
+    Procedure LoadFromFile(AFileName :String ; const Section : String);
+    Property Prefix : String  Read FPrefix;
+    Property SectionPrefix : String  Read FSectionPrefix;
     Property FileName : String Read FFileName Write FFileName;
     Property FileName : String Read FFileName Write FFileName;
     Property GlobalSection : String Read FGlobalSection Write FGlobalSection;
     Property GlobalSection : String Read FGlobalSection Write FGlobalSection;
   end;
   end;
@@ -59,14 +59,14 @@ Type
 
 
   TNamedIniCollectionItem = Class(TIniCollectionItem)
   TNamedIniCollectionItem = Class(TIniCollectionItem)
   private
   private
-    procedure SetName(const AValue: String);
+    procedure SetName(const AValue:String);
   Protected
   Protected
     FName : String;
     FName : String;
     FUserData : TObject;
     FUserData : TObject;
   Protected
   Protected
     Procedure SetCollection(Value : TCollection); override;
     Procedure SetCollection(Value : TCollection); override;
     function GetSectionName: String; override;
     function GetSectionName: String; override;
-    procedure SetSectionName(const Value: String); override;
+    procedure SetSectionName(const Value:String ); override;
   Public
   Public
     Property UserData : TObject Read FUserData Write FUserData;
     Property UserData : TObject Read FUserData Write FUserData;
   Published
   Published
@@ -80,8 +80,8 @@ Type
     procedure SetNamedItem(Index: Integer; const AValue: TNamedIniCollectionItem);
     procedure SetNamedItem(Index: Integer; const AValue: TNamedIniCollectionItem);
   Public
   Public
     Function IndexOfUserData(UserData : TObject) : Integer;
     Function IndexOfUserData(UserData : TObject) : Integer;
-    Function IndexOfName(Const AName : String) : Integer;
-    Function FindByName(Const AName : string) : TNamedIniCollectionItem;
+    Function IndexOfName(Const AName :String ) : Integer;
+    Function FindByName(Const AName :String ) : TNamedIniCollectionItem;
     Function FindByUserData(UserData : TObject) : TNamedIniCollectionItem;
     Function FindByUserData(UserData : TObject) : TNamedIniCollectionItem;
     Property NamedItems [Index: Integer] : TNamedIniCollectionItem Read GetNamedItem Write SetNamedItem; default;
     Property NamedItems [Index: Integer] : TNamedIniCollectionItem Read GetNamedItem Write SetNamedItem; default;
   end;
   end;
@@ -158,11 +158,11 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TIniCollection.LoadFromIni(Ini: TCustomInifile; Section: String);
+procedure TIniCollection.LoadFromIni(Ini: TCustomInifile; Section:String);
 
 
 Var
 Var
   ACount,I : Integer;
   ACount,I : Integer;
-  N,SP : String;
+  N,SP :String ;
 
 
 begin
 begin
   Clear;
   Clear;
@@ -258,7 +258,7 @@ begin
   inherited SetCollection(Value);
   inherited SetCollection(Value);
 end;
 end;
 
 
-function TNamedIniCollectionItem.GetSectionName: String;
+function TNamedIniCollectionItem.GetSectionName:String ;
 begin
 begin
   Result:=FName;
   Result:=FName;
 end;
 end;
@@ -301,7 +301,7 @@ begin
     Dec(Result);
     Dec(Result);
 end;
 end;
 
 
-function TNamedIniCollection.FindByName(const AName : string): TNamedIniCollectionItem;
+function TNamedIniCollection.FindByName(const AName : String): TNamedIniCollectionItem;
 
 
 Var
 Var
   I : Integer;
   I : Integer;

+ 1 - 1
packages/fcl-base/src/netwlibc/custapp.inc

@@ -16,7 +16,7 @@
 Procedure SysGetEnvironmentList(List : TStrings;NamesOnly : Boolean);
 Procedure SysGetEnvironmentList(List : TStrings;NamesOnly : Boolean);
 
 
 Var
 Var
-  P : PPChar;
+  P : PPAnsiChar;
   S : String;
   S : String;
   I : Integer;
   I : Integer;
 
 

+ 3 - 3
packages/fcl-base/src/os2/custapp.inc

@@ -15,9 +15,9 @@
 
 
 { taken from dos unit }
 { taken from dos unit }
 
 
-function EnvStr (Index: longint): string;
+function EnvStr (Index: longint): ;
 
 
-var HP: PChar;
+var HP: PAnsiChar;
 
 
 begin
 begin
     if (Index <= 0) or (Index > EnvC) then
     if (Index <= 0) or (Index > EnvC) then
@@ -33,7 +33,7 @@ end;
 procedure SysGetEnvironmentList(List : TStrings;NamesOnly : Boolean);
 procedure SysGetEnvironmentList(List : TStrings;NamesOnly : Boolean);
 
 
 Var
 Var
-  S : String;
+  S : ;
   J,I : Integer;
   J,I : Integer;
 
 
 begin
 begin

+ 20 - 20
packages/fcl-base/src/os2/eventlog.inc

@@ -64,26 +64,26 @@ type
     Len: word;          { length of this record (including the Len field) }
     Len: word;          { length of this record (including the Len field) }
     Rec_ID: word;       { record ID }
     Rec_ID: word;       { record ID }
     Status: cardinal;   { record status bits (see lf_Bit_* constants) }
     Status: cardinal;   { record status bits (see lf_Bit_* constants) }
-    Qualifier: array [1..4] of char;    { qualifier tag }
+    Qualifier: array [1..4] of AnsiChar;    { qualifier tag }
     Reserved: cardinal;
     Reserved: cardinal;
     Time: cardinal;     { hours, minutes, seconds, hundreds }
     Time: cardinal;     { hours, minutes, seconds, hundreds }
     Date: cardinal;     { day, month, year (stored as word) }
     Date: cardinal;     { day, month, year (stored as word) }
     case byte of
     case byte of
-     0: (Data: array [1..MaxDataSize] of char);
-     1: (Originator256: array [0..255] of char;
-         ProcessName_O256: array [1..260] of char;
-         FormatDLLName_O256_ProcName: array [1..12] of char;
-         Data_O256_ProcName: array [1..MaxDataSize] of char);
-     2: (Originator256b: array [0..255] of char;
-         FormatDLLName_O256: array [1..12] of char;
-         Data_O256: array [1..MaxDataSize] of char);
-     3: (Originator8: array [0..7] of char;
-         ProcessName_O8: array [1..260] of char;
-         FormatDLLName_O8_ProcName: array [1..12] of char;
-         Data_O8_ProcName: array [1..MaxDataSize] of char);
-     4: (Originator8b: array [0..7] of char;
-         FormatDLLName_O8: array [1..12] of char;
-         Data_O8: array [1..MaxDataSize] of char);
+     0: (Data: array [1..MaxDataSize] of AnsiChar);
+     1: (Originator256: array [0..255] of AnsiChar;
+         ProcessName_O256: array [1..260] of AnsiChar;
+         FormatDLLName_O256_ProcName: array [1..12] of AnsiChar;
+         Data_O256_ProcName: array [1..MaxDataSize] of AnsiChar);
+     2: (Originator256b: array [0..255] of AnsiChar;
+         FormatDLLName_O256: array [1..12] of AnsiChar;
+         Data_O256: array [1..MaxDataSize] of AnsiChar);
+     3: (Originator8: array [0..7] of AnsiChar;
+         ProcessName_O8: array [1..260] of AnsiChar;
+         FormatDLLName_O8_ProcName: array [1..12] of AnsiChar;
+         Data_O8_ProcName: array [1..MaxDataSize] of AnsiChar);
+     4: (Originator8b: array [0..7] of AnsiChar;
+         FormatDLLName_O8: array [1..12] of AnsiChar;
+         Data_O8: array [1..MaxDataSize] of AnsiChar);
   end;
   end;
   LogRecord = TLogRecord;
   LogRecord = TLogRecord;
   PLogRecord = ^TLogRecord;
   PLogRecord = ^TLogRecord;
@@ -113,7 +113,7 @@ function LogAddEntries (Handle: cardinal; Service: cardinal;
   var LogEntries: TLogEntryRec): longint; cdecl; external 'DOSCALLS' index 432;
   var LogEntries: TLogEntryRec): longint; cdecl; external 'DOSCALLS' index 432;
 
 
 
 
-function TEventLog.DefaultFileName: string;
+function TEventLog.DefaultFileName: ;
 
 
 begin
 begin
   Result := GetEnvironmentVariable ('TEMP');
   Result := GetEnvironmentVariable ('TEMP');
@@ -164,14 +164,14 @@ begin
 end;
 end;
 
 
 
 
-procedure TEventLog.WriteSystemLog (EventType: TEventType; const Msg: string);
+procedure TEventLog.WriteSystemLog (EventType: TEventType; const Msg: );
 
 
 const
 const
   WinET: array [TEventType] of Str3 = ('USR', 'INF', 'WRN', 'ERR', 'DBG');
   WinET: array [TEventType] of Str3 = ('USR', 'INF', 'WRN', 'ERR', 'DBG');
 
 
 var
 var
   P: PLogEntryRec;
   P: PLogEntryRec;
-  S: string;
+  S: ;
   Cnt, TSize, DSize: cardinal;
   Cnt, TSize, DSize: cardinal;
   W: word;
   W: word;
 
 
@@ -222,7 +222,7 @@ begin
     end;
     end;
 end;
 end;
 
 
-Function TEventLog.RegisterMessageFile(AFileName : String) : Boolean;
+Function TEventLog.RegisterMessageFile(AFileName : ) : Boolean;
 
 
 begin
 begin
   Result:=True;
   Result:=True;

+ 4 - 4
packages/fcl-base/src/rtfdata.inc

@@ -412,7 +412,7 @@ TRTFFuncPtr = procedure of object;
 
 
 PRTFFONT = ^TRTFFONT;
 PRTFFONT = ^TRTFFONT;
 TRTFFont = Record
 TRTFFont = Record
-        rtfFName    : string;           { font name }
+        rtfFName    : AnsiString;           { font name }
         rtfFNum     : integer;          { font number }
         rtfFNum     : integer;          { font number }
         rtfFFamily  : integer;          { font family }
         rtfFFamily  : integer;          { font family }
         rtfNextFont : PRTFFONT;         { next font in list }
         rtfNextFont : PRTFFONT;         { next font in list }
@@ -439,13 +439,13 @@ TRTFStyleElt = record
         rtfSEMajor,                     { token major number }
         rtfSEMajor,                     { token major number }
         rtfSEMinor,                     { token minor number }
         rtfSEMinor,                     { token minor number }
         rtfSEParam : Integer;           { control symbol parameter }
         rtfSEParam : Integer;           { control symbol parameter }
-        rtfSEText : String;             { text of symbol }
+        rtfSEText : AnsiString;             { text of symbol }
         rtfNextSE : PRTFStyleElt;       { next element in style }
         rtfNextSE : PRTFStyleElt;       { next element in style }
 end;
 end;
 
 
 PRTFSTyle = ^TRTFStyle;
 PRTFSTyle = ^TRTFStyle;
 TRTFStyle = record
 TRTFStyle = record
-        rtfSName : string;              { style name }
+        rtfSName : Ansistring;              { style name }
         rtfSNum,                        { style number }
         rtfSNum,                        { style number }
         rtfSBasedOn,                    { style this one's based on }
         rtfSBasedOn,                    { style this one's based on }
         rtfSNextPar : integer;          { style next paragraph style }
         rtfSNextPar : integer;          { style next paragraph style }
@@ -463,7 +463,7 @@ Type
   TRTFKey = record
   TRTFKey = record
     rtfKMajor : Integer;        { major number }
     rtfKMajor : Integer;        { major number }
     rtfKMinor : Integer;        { minor number }
     rtfKMinor : Integer;        { minor number }
-    rtfKStr   : string[20];     { symbol name }
+    rtfKStr   : String[20];     { symbol name }
     rtfKHash  : Integer;        { symbol name hash value }
     rtfKHash  : Integer;        { symbol name hash value }
     End;
     End;
 
 

+ 15 - 15
packages/fcl-base/src/rtfpars.pp

@@ -39,7 +39,7 @@ TRTFParser = class(TObject)
     FrtfParam : Integer;
     FrtfParam : Integer;
     rtfTextBuf : string [rtfBufSiz];
     rtfTextBuf : string [rtfBufSiz];
     rtfTextLen : Integer;
     rtfTextLen : Integer;
-    pushedChar : Integer;               { pushback char if read too far }
+    pushedChar : Integer;               { pushback AnsiChar if read too far }
     pushedClass : Integer;      { pushed token info for RTFUngetToken() }
     pushedClass : Integer;      { pushed token info for RTFUngetToken() }
     pushedMajor,
     pushedMajor,
     pushedMinor,
     pushedMinor,
@@ -62,7 +62,7 @@ TRTFParser = class(TObject)
     Function  CheckMM (major, minor : Integer) : Boolean;
     Function  CheckMM (major, minor : Integer) : Boolean;
     Procedure Real_RTFGetToken;
     Procedure Real_RTFGetToken;
     Function  GetChar : Integer;
     Function  GetChar : Integer;
-    Procedure Lookup (S : String);
+    Procedure Lookup (S : AnsiString );
     Function  GetFont (num : Integer) : PRTFFont;
     Function  GetFont (num : Integer) : PRTFFont;
     Function  GetColor (num : Integer) : PRTFColor;
     Function  GetColor (num : Integer) : PRTFColor;
     Function  GetStyle (num : Integer) : PRTFStyle;
     Function  GetStyle (num : Integer) : PRTFStyle;
@@ -83,9 +83,9 @@ TRTFParser = class(TObject)
     Procedure StartReading;
     Procedure StartReading;
     Procedure SetReadHook (Hook : TRTFFuncPtr);
     Procedure SetReadHook (Hook : TRTFFuncPtr);
     Procedure UngetToken;
     Procedure UngetToken;
-    Procedure SetToken (Aclass, major, minor, param : Integer; const text : string);
+    Procedure SetToken (Aclass, major, minor, param : Integer; const text : String);
     Procedure ExpandStyle (n : Integer);
     Procedure ExpandStyle (n : Integer);
-    Function GetRtfBuf : String;
+    Function GetRtfBuf : AnsiString;
     { Properties }
     { Properties }
     Property Colors [Index : Integer]: PRTFColor Read GetColor;
     Property Colors [Index : Integer]: PRTFColor Read GetColor;
     Property ClassCallBacks [AClass : Integer]: TRTFFuncptr
     Property ClassCallBacks [AClass : Integer]: TRTFFuncptr
@@ -112,7 +112,7 @@ Const EOF = -255;
          Utility functions
          Utility functions
   ---------------------------------------------------------------------}
   ---------------------------------------------------------------------}
 
 
-Function Hash (const s : String) : Integer;
+Function Hash (const s : AnsiString) : Integer;
 
 
 var
 var
   val,i : integer;
   val,i : integer;
@@ -505,7 +505,7 @@ if c<>ord('\') then
   Begin
   Begin
   { Two possibilities here:
   { Two possibilities here:
     1) ASCII 9, effectively like \tab control symbol
     1) ASCII 9, effectively like \tab control symbol
-    2) literal text char }
+    2) literal text AnsiChar }
   if c=ord(#8) then                     { ASCII 9 }
   if c=ord(#8) then                     { ASCII 9 }
     Begin
     Begin
     FrtfClass := rtfControl;
     FrtfClass := rtfControl;
@@ -526,10 +526,10 @@ if (c=EOF) then
 if ( not isalpha (c)) then
 if ( not isalpha (c)) then
   Begin
   Begin
   { Three possibilities here:
   { Three possibilities here:
-   1) hex encoded text char, e.g., \'d5, \'d3
-   2) special escaped text char, e.g., \, \;
+   1) hex encoded text AnsiChar, e.g., \'d5, \'d3
+   2) special escaped text AnsiChar, e.g., \, \;
    3) control symbol, e.g., \_, \-, \|, \<10> }
    3) control symbol, e.g., \_, \-, \|, \<10> }
-  if c=ord('''') then { hex char }
+  if c=ord('''') then { hex AnsiChar }
      Begin
      Begin
      c:=getchar;
      c:=getchar;
      if (c<>EOF) then
      if (c<>EOF) then
@@ -546,7 +546,7 @@ if ( not isalpha (c)) then
        { early eof, whoops (class is rtfUnknown) }
        { early eof, whoops (class is rtfUnknown) }
        exit;
        exit;
        End;
        End;
-  if pos (chr(c),':{};\')<>0 then { escaped char }
+  if pos (chr(c),':{};\')<>0 then { escaped AnsiChar }
     Begin
     Begin
     FrtfClass := rtfText;
     FrtfClass := rtfText;
     FrtfMajor := c;
     FrtfMajor := c;
@@ -576,8 +576,8 @@ FTokenClass:=rtfControl;
 if (c <>EOF) then
 if (c <>EOF) then
   rtfTextBuf:=rtfTextBuf+chr(c);
   rtfTextBuf:=rtfTextBuf+chr(c);
 { Should be looking at first digit of parameter if there
 { Should be looking at first digit of parameter if there
-  is one, unless it's negative.  In that case, next char
-  is '-', so need to gobble next char, and remember sign. }
+  is one, unless it's negative.  In that case, next AnsiChar
+  is '-', so need to gobble next AnsiChar, and remember sign. }
 sign := 1;
 sign := 1;
 if c = ord('-') then
 if c = ord('-') then
   Begin
   Begin
@@ -598,7 +598,7 @@ if (c<>EOF) then
   FrtfParam:= sign*FrtfParam;
   FrtfParam:= sign*FrtfParam;
   End;
   End;
 { If control symbol delimiter was a blank, gobble it.
 { If control symbol delimiter was a blank, gobble it.
- Otherwise the character is first char of next token, so
+ Otherwise the character is first AnsiChar of next token, so
  push it back for next call.  In either case, delete the
  push it back for next call.  In either case, delete the
  delimiter from the token buffer. }
  delimiter from the token buffer. }
 if (c<>EOF) then
 if (c<>EOF) then
@@ -1003,7 +1003,7 @@ while se<>nil do
 s^.rtfExpanding:=0;     { done - clear expansion flag }
 s^.rtfExpanding:=0;     { done - clear expansion flag }
 End;
 End;
 
 
-function TRTFParser.GetRtfBuf: String;
+function TRTFParser.GetRtfBuf: AnsiString;
 begin
 begin
   Result:=rtfTextBuf;
   Result:=rtfTextBuf;
 end;
 end;
@@ -1032,7 +1032,7 @@ End;
        not found, the class turns into rtfUnknown.
        not found, the class turns into rtfUnknown.
   ---------------------------------------------------------------------}
   ---------------------------------------------------------------------}
 
 
-Procedure TRTFParser.Lookup(S : String);
+Procedure TRTFParser.Lookup (S : AnsiString);
 
 
 var
 var
  thehash,rp : Integer;
  thehash,rp : Integer;

+ 2 - 2
packages/fcl-base/src/singleinstance.pp

@@ -40,7 +40,7 @@ type
     function GetIsClient: Boolean; virtual; abstract;
     function GetIsClient: Boolean; virtual; abstract;
     function GetIsServer: Boolean; virtual; abstract;
     function GetIsServer: Boolean; virtual; abstract;
     function GetStartResult: TSingleInstanceStart; virtual;
     function GetStartResult: TSingleInstanceStart; virtual;
-    procedure DoServerReceivedParams(const aParamsDelimitedText: string);
+    procedure DoServerReceivedParams(const aParamsDelimitedText: AnsiString);
     Procedure SetStartResult(AValue : TSingleInstanceStart); 
     Procedure SetStartResult(AValue : TSingleInstanceStart); 
   public
   public
     constructor Create(aOwner: TComponent); override;
     constructor Create(aOwner: TComponent); override;
@@ -91,7 +91,7 @@ begin
 end;
 end;
 
 
 procedure TBaseSingleInstance.DoServerReceivedParams(
 procedure TBaseSingleInstance.DoServerReceivedParams(
-  const aParamsDelimitedText: string);
+  const aParamsDelimitedText: AnsiString);
 var
 var
   xSL: TStringList;
   xSL: TStringList;
 begin
 begin

+ 17 - 17
packages/fcl-base/src/streamex.pp

@@ -62,7 +62,7 @@ type
       function CreateDriver(Stream: TStream; BufSize: Integer): TAbstractObjectReader; override;
       function CreateDriver(Stream: TStream; BufSize: Integer): TAbstractObjectReader; override;
    public
    public
       function GetDriver: TBidirBinaryObjectReader;
       function GetDriver: TBidirBinaryObjectReader;
-      function ReadStr: string;
+      function ReadStr: AnsiString;
       procedure Read(var Buf; Count: LongInt); override;
       procedure Read(var Buf; Count: LongInt); override;
       property Position: LongInt read GetPosition write SetPosition;
       property Position: LongInt read GetPosition write SetPosition;
    end;
    end;
@@ -78,7 +78,7 @@ type
       function GetDriver: TBidirBinaryObjectWriter;
       function GetDriver: TBidirBinaryObjectWriter;
       procedure FlushBuffer;
       procedure FlushBuffer;
       procedure Write(const Buf; Count: LongInt); override;
       procedure Write(const Buf; Count: LongInt); override;
-      procedure WriteStr(const Value: string);
+      procedure WriteStr(const Value: Ansistring);
       procedure WriteValue(Value: TValueType);
       procedure WriteValue(Value: TValueType);
       property Position: LongInt read GetPosition write SetPosition;
       property Position: LongInt read GetPosition write SetPosition;
    end;
    end;
@@ -92,8 +92,8 @@ type
      constructor Create; virtual;
      constructor Create; virtual;
      procedure Reset; virtual; abstract;
      procedure Reset; virtual; abstract;
      procedure Close; virtual; abstract;
      procedure Close; virtual; abstract;
-     procedure ReadLine(out AString: string); virtual; abstract; overload;
-     function ReadLine: string; overload;
+     procedure ReadLine(out AString: AnsiString); virtual; abstract; overload;
+     function ReadLine: AnsiString; overload;
      property Eof: Boolean read IsEof;
      property Eof: Boolean read IsEof;
    end;
    end;
 
 
@@ -117,7 +117,7 @@ type
      destructor Destroy; override;
      destructor Destroy; override;
      procedure Reset; override;
      procedure Reset; override;
      procedure Close; override;
      procedure Close; override;
-     procedure ReadLine(out AString: string); override; overload;
+     procedure ReadLine(out AString:Ansistring ); override; overload;
      property BaseStream: TStream read FStream;
      property BaseStream: TStream read FStream;
      property OwnsStream: Boolean read FOwnsStream write FOwnsStream;
      property OwnsStream: Boolean read FOwnsStream write FOwnsStream;
    end;
    end;
@@ -130,12 +130,12 @@ type
    Protected  
    Protected  
      function IsEof: Boolean; override;
      function IsEof: Boolean; override;
    public
    public
-     constructor Create(const AString: string; ABufferSize: Integer); virtual;
-     constructor Create(const AString: string); virtual;
+     constructor Create(const AString: AnsiString; ABufferSize: Integer); virtual;
+     constructor Create(const AString: AnsiString); virtual;
      destructor Destroy; override;
      destructor Destroy; override;
      procedure Reset; override;
      procedure Reset; override;
      procedure Close; override;
      procedure Close; override;
-     procedure ReadLine(out AString: string); override; overload;
+     procedure ReadLine(out AString: AnsiString); override; overload;
    end;
    end;
 
 
    { TFileReader }
    { TFileReader }
@@ -155,7 +155,7 @@ type
      destructor Destroy; override;
      destructor Destroy; override;
      procedure Reset; override;
      procedure Reset; override;
      procedure Close; override;
      procedure Close; override;
-     procedure ReadLine(out AString: string); override; overload;
+     procedure ReadLine(out AString: AnsiString); override; overload;
    end;
    end;
 
 
    { TTextWriter }
    { TTextWriter }
@@ -855,7 +855,7 @@ begin
 end;
 end;
 
 
 
 
-function TDelphiReader.ReadStr: string;
+function TDelphiReader.ReadStr: AnsiString ;
 begin
 begin
    Result := GetDriver.ReadStr;
    Result := GetDriver.ReadStr;
 end;
 end;
@@ -897,7 +897,7 @@ begin
    GetDriver.Write(Buf, Count);
    GetDriver.Write(Buf, Count);
 end;
 end;
 
 
-procedure TDelphiWriter.WriteStr(const Value: string);
+procedure TDelphiWriter.WriteStr(const Value: AnsiString );
 begin
 begin
    GetDriver.WriteStr(Value);
    GetDriver.WriteStr(Value);
 end;
 end;
@@ -914,7 +914,7 @@ begin
   inherited Create;
   inherited Create;
 end;
 end;
 
 
-function TTextReader.ReadLine: string;
+function TTextReader.ReadLine: AnsiString;
 
 
 begin
 begin
   ReadLine(Result);
   ReadLine(Result);
@@ -990,7 +990,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TStreamReader.ReadLine(out AString: string);
+procedure TStreamReader.ReadLine(out AString: AnsiString );
 var
 var
   VPByte: PByte;
   VPByte: PByte;
   VPosition, VStrLength, VLength: Integer;
   VPosition, VStrLength, VLength: Integer;
@@ -1042,13 +1042,13 @@ end;
 
 
 { TStringReader }
 { TStringReader }
 
 
-constructor TStringReader.Create(const AString: string; ABufferSize: Integer);
+constructor TStringReader.Create(const AString: AnsiString; ABufferSize: Integer);
 begin
 begin
   inherited Create;
   inherited Create;
   FReader := TStreamReader.Create(TStringStream.Create(AString), ABufferSize, True);
   FReader := TStreamReader.Create(TStringStream.Create(AString), ABufferSize, True);
 end;
 end;
 
 
-constructor TStringReader.Create(const AString: string);
+constructor TStringReader.Create(const AString: AnsiString);
 begin
 begin
   Create(AString, BUFFER_SIZE);
   Create(AString, BUFFER_SIZE);
 end;
 end;
@@ -1074,7 +1074,7 @@ begin
   Result := FReader.IsEof;
   Result := FReader.IsEof;
 end;
 end;
 
 
-procedure TStringReader.ReadLine(out AString: string);
+procedure TStringReader.ReadLine(out AString: AnsiString );
 begin
 begin
   FReader.ReadLine(AString);
   FReader.ReadLine(AString);
 end;
 end;
@@ -1126,7 +1126,7 @@ begin
   Result := FReader.IsEof;
   Result := FReader.IsEof;
 end;
 end;
 
 
-procedure TFileReader.ReadLine(out AString: string);
+procedure TFileReader.ReadLine(out AString: AnsiString);
 begin
 begin
   FReader.ReadLine(AString);
   FReader.ReadLine(AString);
 end;
 end;

+ 6 - 6
packages/fcl-base/src/unix/eventlog.inc

@@ -49,9 +49,9 @@ const
   LOG_AUTHPRIV = 10 shl 3;
   LOG_AUTHPRIV = 10 shl 3;
 
 
 procedure closelog;cdecl;external;
 procedure closelog;cdecl;external;
-procedure openlog(__ident:pchar; __option:longint; __facilit:longint);cdecl;external;
+procedure openlog(__ident:PAnsiChar; __option:longint; __facilit:longint);cdecl;external;
 function setlogmask(__mask:longint):longint;cdecl;external;
 function setlogmask(__mask:longint):longint;cdecl;external;
-procedure syslog(__pri:longint; __fmt:pchar; args:array of const);cdecl;external;
+procedure syslog(__pri:longint; __fmt:PAnsiChar; args:array of const);cdecl;external;
 
 
 Function TEventLog.DefaultFileName : String;
 Function TEventLog.DefaultFileName : String;
 
 
@@ -67,7 +67,7 @@ Procedure TEventLog.ActivateSystemLog;
 
 
 begin
 begin
   CheckIdentification;
   CheckIdentification;
-  OpenLog(Pchar(Identification),LOG_NOWAIT,LOG_USER);
+  OpenLog(PAnsiChar(Identification),LOG_NOWAIT,LOG_USER);
 end;
 end;
 
 
 Procedure TEventLog.DeActivateSystemLog;
 Procedure TEventLog.DeActivateSystemLog;
@@ -79,13 +79,13 @@ end;
 procedure TEventLog.WriteSystemLog(EventType : TEventType; const Msg : String);
 procedure TEventLog.WriteSystemLog(EventType : TEventType; const Msg : String);
 
 
 Var
 Var
-  P,PT : PChar;
+  P,PT : PAnsiChar;
   T : String;
   T : String;
 
 
 begin
 begin
-  P:=PChar(Msg);
+  P:=PAnsiChar(Msg);
   T:=EventTypeToString(EventType);
   T:=EventTypeToString(EventType);
-  PT:=PChar(T);
+  PT:=PAnsiChar(T);
   syslog(MapTypeToEvent(EventType),'[%s] %s',[PT,P]);
   syslog(MapTypeToEvent(EventType),'[%s] %s',[PT,P]);
 end;
 end;
 
 

+ 9 - 9
packages/fcl-base/src/win/eventlog.inc

@@ -32,7 +32,7 @@ Procedure TEventLog.ActivateSystemLog;
 
 
 begin
 begin
   CheckIdentification;
   CheckIdentification;
-  FLogHandle := Pointer(OpenEventLogA(Nil,Pchar(Identification)));
+  FLogHandle := Pointer(OpenEventLogA(Nil,PAnsiChar(Identification)));
   If (FLogHandle=Nil) and FRaiseExceptionOnError then
   If (FLogHandle=Nil) and FRaiseExceptionOnError then
     Raise ELogError.CreateFmt(SErrNoSysLog,[GetLastError]);
     Raise ELogError.CreateFmt(SErrNoSysLog,[GetLastError]);
 end;
 end;
@@ -52,7 +52,7 @@ function ReportEvent(hEventLog: THandle; wType, wCategory: Word;
 procedure TEventLog.WriteSystemLog(EventType : TEventType; const Msg : String);
 procedure TEventLog.WriteSystemLog(EventType : TEventType; const Msg : String);
 
 
 Var
 Var
-  P : PChar;
+  P : PAnsiChar;
   I : Integer;
   I : Integer;
   FCategory : Word;
   FCategory : Word;
   FEventID : DWord;
   FEventID : DWord;
@@ -62,7 +62,7 @@ begin
   FCategory:=MapTypeToCategory(EventType);
   FCategory:=MapTypeToCategory(EventType);
   FEventID:=MapTypeToEventID(EventType);
   FEventID:=MapTypeToEventID(EventType);
   FEventType:=MapTypeToEvent(EventType);
   FEventType:=MapTypeToEvent(EventType);
-  P:=PChar(Msg);
+  P:=PAnsiChar(Msg);
   If Not ReportEvent(Cardinal(FLogHandle),FEventType,FCategory,FEventID,Nil,1,0,@P,Nil) and FRaiseExceptionOnError then
   If Not ReportEvent(Cardinal(FLogHandle),FEventType,FCategory,FEventID,Nil,1,0,@P,Nil) and FRaiseExceptionOnError then
     begin
     begin
     I:=GetLastError;
     I:=GetLastError;
@@ -89,7 +89,7 @@ begin
   CheckIdentification;
   CheckIdentification;
   ELKey:=Format(SKeyEventLog,[IDentification]);
   ELKey:=Format(SKeyEventLog,[IDentification]);
   Result:=RegCreateKeyExA(HKEY_LOCAL_MACHINE,
   Result:=RegCreateKeyExA(HKEY_LOCAL_MACHINE,
-                          PChar(ELKey),0,'',
+                          PAnsiChar(ELKey),0,'',
                           REG_OPTION_NON_VOLATILE,
                           REG_OPTION_NON_VOLATILE,
                           KEY_ALL_ACCESS,
                           KEY_ALL_ACCESS,
                           SecurityAttributes,Handle,
                           SecurityAttributes,Handle,
@@ -99,11 +99,11 @@ begin
       If AFileName='' then
       If AFileName='' then
         AFileName:=ParamStr(0);
         AFileName:=ParamStr(0);
       Value:=4;
       Value:=4;
-      Result:=Result and (RegSetValueExA(Handle,PChar(SKeyCategoryCount),0,REG_DWORD,@Value,sizeof(DWORD))=ERROR_SUCCESS);
+      Result:=Result and (RegSetValueExA(Handle,PAnsiChar(SKeyCategoryCount),0,REG_DWORD,@Value,sizeof(DWORD))=ERROR_SUCCESS);
       Value:=7;
       Value:=7;
-      Result:=Result and (RegSetValueExA(Handle,PChar(SKeyTypesSupported),0,REG_DWORD,@Value,sizeof(DWORD))=ERROR_SUCCESS);
-      Result:=Result and (RegSetValueExA(Handle,PChar(SKeyCategoryMessageFile),0,REG_SZ,@AFileName[1],Length(AFileName))=ERROR_SUCCESS);
-      Result:=Result and (RegSetValueExA(Handle,PChar(SKeyEventMessageFile),0,REG_SZ,@AFileName[1],Length(AFileName))=ERROR_SUCCESS);
+      Result:=Result and (RegSetValueExA(Handle,PAnsiChar(SKeyTypesSupported),0,REG_DWORD,@Value,sizeof(DWORD))=ERROR_SUCCESS);
+      Result:=Result and (RegSetValueExA(Handle,PAnsiChar(SKeyCategoryMessageFile),0,REG_SZ,@AFileName[1],Length(AFileName))=ERROR_SUCCESS);
+      Result:=Result and (RegSetValueExA(Handle,PAnsiChar(SKeyEventMessageFile),0,REG_SZ,@AFileName[1],Length(AFileName))=ERROR_SUCCESS);
     end;
     end;
 end;
 end;
 
 
@@ -113,7 +113,7 @@ Var
   ELKey : String;
   ELKey : String;
 begin
 begin
   ELKey:=Format(SKeyEventLog,[IDentification]);
   ELKey:=Format(SKeyEventLog,[IDentification]);
-  Result:=(RegDeleteKeyA(HKEY_LOCAL_MACHINE,pchar(ELKey))=ERROR_SUCCESS);
+  Result:=(RegDeleteKeyA(HKEY_LOCAL_MACHINE,PAnsiChar(ELKey))=ERROR_SUCCESS);
 end;
 end;
 
 
 function TEventLog.MapTypeToCategory(EventType: TEventType): Word;
 function TEventLog.MapTypeToCategory(EventType: TEventType): Word;

+ 3 - 3
packages/fcl-base/src/wince/fileinfo.pp

@@ -52,7 +52,7 @@ type
   public
   public
      constructor Create(AOwner: TComponent);  override;
      constructor Create(AOwner: TComponent);  override;
      destructor Destroy; override;
      destructor Destroy; override;
-     function getVersionSetting(inp : string): String;
+     function getVersionSetting(inp : ): ;
   published
   published
     property fileName : widestring  read FFileName write SetFileName;
     property fileName : widestring  read FFileName write SetFileName;
     property VersionStrings  : TStringList  read FmyVersionStrings;
     property VersionStrings  : TStringList  read FmyVersionStrings;
@@ -155,8 +155,8 @@ begin
   finally ts.Free end;
   finally ts.Free end;
 end;
 end;
 
 
-{ get single version string }
-function TFileVersionInfo.getVersionSetting(inp : string): String;
+{ get single version  }
+function TFileVersionInfo.getVersionSetting(inp : ): ;
 var i : integer;
 var i : integer;
 begin
 begin
   inp:=LowerCase(inp);
   inp:=LowerCase(inp);

+ 9 - 9
packages/fcl-base/tests/tcbufferedfilestream.pp

@@ -36,7 +36,7 @@ procedure TTestBufferedFileStream.TestCacheRead;
 var
 var
   lBufferedStream: TBufferedFileStream;
   lBufferedStream: TBufferedFileStream;
   lStream: TFileStream;
   lStream: TFileStream;
-  b: array [0..10000-1] of char;
+  b: array [0..10000-1] of AnsiChar;
   j,k: integer;
   j,k: integer;
   lBytesToRead: integer;
   lBytesToRead: integer;
   lEffectiveRead: integer;
   lEffectiveRead: integer;
@@ -75,7 +75,7 @@ begin
       {$ELSE}
       {$ELSE}
       lCheckInitV:=lReadPosition mod 10;
       lCheckInitV:=lReadPosition mod 10;
       for k := 0 to Pred(lEffectiveRead) do begin
       for k := 0 to Pred(lEffectiveRead) do begin
-        if b[k]<>char(ord('0')+lCheckInitV mod 10) then begin
+        if b[k]<>AnsiChar(ord('0')+lCheckInitV mod 10) then begin
           FAIL('Expected data error');
           FAIL('Expected data error');
         end;
         end;
         inc(lCheckInitV);
         inc(lCheckInitV);
@@ -98,7 +98,7 @@ begin
 
 
       lCheckInitV:=lReadPosition mod 10;
       lCheckInitV:=lReadPosition mod 10;
       for k := 0 to Pred(lEffectiveRead) do begin
       for k := 0 to Pred(lEffectiveRead) do begin
-        if b[k]<>char(ord('0')+lCheckInitV mod 10) then begin
+        if b[k]<>AnsiChar(ord('0')+lCheckInitV mod 10) then begin
           FAIL('Expected data error');
           FAIL('Expected data error');
         end;
         end;
         inc(lCheckInitV);
         inc(lCheckInitV);
@@ -132,7 +132,7 @@ begin
       {$ELSE}
       {$ELSE}
       lCheckInitV:=lReadPosition mod 10;
       lCheckInitV:=lReadPosition mod 10;
       for k := 0 to Pred(lEffectiveRead) do begin
       for k := 0 to Pred(lEffectiveRead) do begin
-        if b[k]<>char(ord('0')+lCheckInitV mod 10) then begin
+        if b[k]<>AnsiChar(ord('0')+lCheckInitV mod 10) then begin
           FAIL('Expected data error');
           FAIL('Expected data error');
         end;
         end;
         inc(lCheckInitV);
         inc(lCheckInitV);
@@ -154,7 +154,7 @@ begin
 
 
       lCheckInitV:=lReadPosition mod 10;
       lCheckInitV:=lReadPosition mod 10;
       for k := 0 to Pred(lEffectiveRead) do begin
       for k := 0 to Pred(lEffectiveRead) do begin
-        if b[k]<>char(ord('0')+lCheckInitV mod 10) then begin
+        if b[k]<>AnsiChar(ord('0')+lCheckInitV mod 10) then begin
           FAIL('Expected data error');
           FAIL('Expected data error');
         end;
         end;
         inc(lCheckInitV);
         inc(lCheckInitV);
@@ -185,7 +185,7 @@ var
   lBufferedStream: TBufferedFileStream;
   lBufferedStream: TBufferedFileStream;
   lStream: TFileStream;
   lStream: TFileStream;
   lVerifyStream1,lVerifyStream2: TFileStream;
   lVerifyStream1,lVerifyStream2: TFileStream;
-  b: array [0..10000-1] of char;
+  b: array [0..10000-1] of AnsiChar;
   j: integer;
   j: integer;
   lBytesToWrite: integer;
   lBytesToWrite: integer;
   lWritePosition: int64;
   lWritePosition: int64;
@@ -205,7 +205,7 @@ begin
       lStream.Write(b,sizeof(b));
       lStream.Write(b,sizeof(b));
     end;
     end;
     for j := 0 to Pred(Sizeof(b)) do begin
     for j := 0 to Pred(Sizeof(b)) do begin
-      b[j]:=char(ord('0')+j mod 10);
+      b[j]:=AnsiChar(ord('0')+j mod 10);
     end;
     end;
   finally
   finally
     lBufferedStream.Free;
     lBufferedStream.Free;
@@ -334,11 +334,11 @@ end;
 procedure TTestBufferedFileStream.SetUp;
 procedure TTestBufferedFileStream.SetUp;
 var
 var
   F: TFileStream;
   F: TFileStream;
-  b: array [0..10000-1] of char;
+  b: array [0..10000-1] of AnsiChar;
   j: integer;
   j: integer;
 begin
 begin
   for j := 0 to Pred(10000) do begin
   for j := 0 to Pred(10000) do begin
-    b[j]:=char(ord('0')+j mod 10);
+    b[j]:=AnsiChar(ord('0')+j mod 10);
   end;
   end;
   F:=TFileStream.Create(TEST_FILENAME,fmCreate);
   F:=TFileStream.Create(TEST_FILENAME,fmCreate);
   for j := 0 to Pred(1000) do begin
   for j := 0 to Pred(1000) do begin

+ 4 - 4
packages/fcl-base/tests/tccsvdocument.pp

@@ -15,7 +15,7 @@ Type
   private
   private
     FDoc: TCSVDocument;
     FDoc: TCSVDocument;
     procedure RemoveTestFile;
     procedure RemoveTestFile;
-    function StripQuotes(S: String): string;
+    function StripQuotes(S: ): ;
     procedure TestTestFile;
     procedure TestTestFile;
   Public
   Public
     Procedure SetUp; override;
     Procedure SetUp; override;
@@ -63,7 +63,7 @@ Const
   RowCount = 4;
   RowCount = 4;
 
 
 Type
 Type
-  TRow = Array[0..ColCount-1] of string;
+  TRow = Array[0..ColCount-1] of ;
   TCells = Array[0..RowCount-1] of TRow;
   TCells = Array[0..RowCount-1] of TRow;
 
 
 Const
 Const
@@ -79,7 +79,7 @@ procedure TTestCSVDocument.CreateTestFile;
 Var
 Var
   L : TStringList;
   L : TStringList;
   R,C : Integer;
   R,C : Integer;
-  S : String;
+  S : ;
 
 
 begin
 begin
   L:=TStringList.Create;
   L:=TStringList.Create;
@@ -106,7 +106,7 @@ begin
   AssertNotNull('Have document',Doc);
   AssertNotNull('Have document',Doc);
 end;
 end;
 
 
-Function TTestCSVDocument.StripQuotes(S : String) : string;
+Function TTestCSVDocument.StripQuotes(S : ) : ;
 
 
 Var
 Var
   L : integer;
   L : integer;

+ 5 - 5
packages/fcl-base/tests/tccsvreadwrite.pp

@@ -15,8 +15,8 @@ type
   private
   private
     FData: TStrings;
     FData: TStrings;
     FParser: TCSVParser;
     FParser: TCSVParser;
-    procedure AssertLine(ARow: Integer; AValues: array of string);
-    procedure HaveNext(ARow, ACol: integer; AValue: String);
+    procedure AssertLine(ARow: Integer; AValues: array of );
+    procedure HaveNext(ARow, ACol: integer; AValue: );
   protected
   protected
     procedure SetUp; override;
     procedure SetUp; override;
     procedure TearDown; override;
     procedure TearDown; override;
@@ -39,10 +39,10 @@ begin
   AssertNotNull('Have parser',Parser);
   AssertNotNull('Have parser',Parser);
 end;
 end;
 
 
-procedure TTestCSVReadWrite.HaveNext(ARow,ACol: integer; AValue : String);
+procedure TTestCSVReadWrite.HaveNext(ARow,ACol: integer; AValue : );
 
 
 Var
 Var
-  CN : String;
+  CN : ;
 
 
 begin
 begin
   CN:=Format('Cell(row: %d, col: %d)',[ARow,ACol]);
   CN:=Format('Cell(row: %d, col: %d)',[ARow,ACol]);
@@ -52,7 +52,7 @@ begin
   AssertEquals(CN+': Value',AValue,Parser.CurrentCellText);
   AssertEquals(CN+': Value',AValue,Parser.CurrentCellText);
 end;
 end;
 
 
-procedure TTestCSVReadWrite.AssertLine(ARow: Integer; AValues: array of string);
+procedure TTestCSVReadWrite.AssertLine(ARow: Integer; AValues: array of );
 
 
 Var
 Var
   I : Integer;
   I : Integer;

+ 8 - 8
packages/fcl-base/tests/testbasenenc.lpr

@@ -18,9 +18,9 @@ program testbasenenc;
 uses sysutils, basenenc;
 uses sysutils, basenenc;
 
 
 
 
-Procedure AssertEquals(Const aActual,aExpected : TBytes; aMsg : String);
+Procedure AssertEquals(Const aActual,aExpected : TBytes; aMsg : );
 
 
-  function ToStr(aBytes : TBytes) : string;
+  function ToStr(aBytes : TBytes) : ;
 
 
   Var
   Var
     I : Integer;
     I : Integer;
@@ -45,7 +45,7 @@ begin
     end;
     end;
 end;
 end;
 
 
-Procedure AssertEquals(Const aActual,aExpected,aMsg : String);
+Procedure AssertEquals(Const aActual,aExpected,aMsg : );
 
 
 begin
 begin
   if aActual<>aExpected then
   if aActual<>aExpected then
@@ -55,7 +55,7 @@ begin
     end;
     end;
 end;
 end;
 
 
-Procedure DoTest(B : Tbytes; aExpected : String; aURL : Boolean = False);
+Procedure DoTest(B : Tbytes; aExpected : ; aURL : Boolean = False);
 
 
 Var
 Var
   B2 : TBytes;
   B2 : TBytes;
@@ -74,13 +74,13 @@ begin
   AssertEquals(B2,B,'DoTest Wrong decode');
   AssertEquals(B2,B,'DoTest Wrong decode');
 end;
 end;
 
 
-Procedure DoTest64(aValue, aExpected : String);
+Procedure DoTest64(aValue, aExpected : );
 
 
 begin
 begin
   DoTest(TEncoding.UTF8.GetAnsiBytes(aValue),aExpected);
   DoTest(TEncoding.UTF8.GetAnsiBytes(aValue),aExpected);
 end;
 end;
 
 
-Procedure DoTest32(aValue, aExpected : String);
+Procedure DoTest32(aValue, aExpected : );
 
 
 Var
 Var
   B2 : TBytes;
   B2 : TBytes;
@@ -93,7 +93,7 @@ begin
   AssertEquals(b2,TEncoding.UTF8.GetAnsiBytes(aValue),'Base32 Wrong encode for '+aValue);
   AssertEquals(b2,TEncoding.UTF8.GetAnsiBytes(aValue),'Base32 Wrong encode for '+aValue);
 end;
 end;
 
 
-Procedure DoTest32Hex(aValue, aExpected : String);
+Procedure DoTest32Hex(aValue, aExpected : );
 
 
 Var
 Var
   B2 : TBytes;
   B2 : TBytes;
@@ -106,7 +106,7 @@ begin
   AssertEquals(B2,TEncoding.UTF8.GetAnsiBytes(aValue),'Base32Hex Wrong encode for '+aValue);
   AssertEquals(B2,TEncoding.UTF8.GetAnsiBytes(aValue),'Base32Hex Wrong encode for '+aValue);
 end;
 end;
 
 
-Procedure DoTest16(aValue, aExpected : String);
+Procedure DoTest16(aValue, aExpected : );
 
 
 Var
 Var
   B2 : TBytes;
   B2 : TBytes;

+ 79 - 79
packages/fcl-base/tests/testexprpars.pp

@@ -29,15 +29,15 @@ type
   TTestExpressionScanner = class(TTestCase)
   TTestExpressionScanner = class(TTestCase)
   Private
   Private
     FP : TFPExpressionScanner;
     FP : TFPExpressionScanner;
-    FInvalidString : String;
-    procedure DoInvalidNumber(AString: String);
-    procedure TestIdentifier(const ASource, ATokenName: string);
+    FInvalidString : ;
+    procedure DoInvalidNumber(AString: );
+    procedure TestIdentifier(const ASource, ATokenName: );
     procedure TestInvalidNumber;
     procedure TestInvalidNumber;
   protected
   protected
     procedure SetUp; override; 
     procedure SetUp; override; 
     procedure TearDown; override;
     procedure TearDown; override;
-    Procedure AssertEquals(Msg : string; AExpected, AActual : TTokenType); overload;
-    Procedure TestString(Const AString : String; AToken : TTokenType);
+    Procedure AssertEquals(Msg : ; AExpected, AActual : TTokenType); overload;
+    Procedure TestString(Const AString : ; AToken : TTokenType);
   published
   published
     procedure TestCreate;
     procedure TestCreate;
     procedure TestSetSource;
     procedure TestSetSource;
@@ -68,16 +68,16 @@ type
   Protected
   Protected
     FDestroyCalled : Integer;
     FDestroyCalled : Integer;
     FCheckNode : TFPExprNode;
     FCheckNode : TFPExprNode;
-    procedure AssertNodeType(Msg: String; AClass: TClass; ANode: TFPExprNode); overload;
-    procedure AssertEquals(Msg: String; AResultType : TResultType; ANode: TFPExprNode); overload;
-    procedure AssertEquals(Msg: String; AExpected,AActual : TResultType); overload;
+    procedure AssertNodeType(Msg: ; AClass: TClass; ANode: TFPExprNode); overload;
+    procedure AssertEquals(Msg: ; AResultType : TResultType; ANode: TFPExprNode); overload;
+    procedure AssertEquals(Msg: ; AExpected,AActual : TResultType); overload;
     Function CreateBoolNode(ABoolean: Boolean) : TFPExprNode;
     Function CreateBoolNode(ABoolean: Boolean) : TFPExprNode;
     Function CreateIntNode(AInteger: Integer) : TFPExprNode;
     Function CreateIntNode(AInteger: Integer) : TFPExprNode;
     Function CreateFloatNode(AFloat : TExprFloat) : TFPExprNode;
     Function CreateFloatNode(AFloat : TExprFloat) : TFPExprNode;
-    Function CreateStringNode(Astring : String) : TFPExprNode;
+    Function CreateStringNode(Astring : ) : TFPExprNode;
     Function CreateDateTimeNode(ADateTime : TDateTime) : TFPExprNode;
     Function CreateDateTimeNode(ADateTime : TDateTime) : TFPExprNode;
     Procedure AssertNodeOK(FN : TFPExprNode);
     Procedure AssertNodeOK(FN : TFPExprNode);
-    Procedure AssertNodeNotOK(Const Msg : String; FN : TFPExprNode);
+    Procedure AssertNodeNotOK(Const Msg : ; FN : TFPExprNode);
     Procedure Setup; override;
     Procedure Setup; override;
   end;
   end;
 
 
@@ -272,7 +272,7 @@ type
     Procedure TearDown; override;
     Procedure TearDown; override;
     Class Function NodeClass : TFPBooleanResultOperationClass; virtual;
     Class Function NodeClass : TFPBooleanResultOperationClass; virtual;
     Class Function ExpectedResult : Boolean; virtual;
     Class Function ExpectedResult : Boolean; virtual;
-    Class Function OperatorString : String; virtual;
+    Class Function OperatorString : ; virtual;
   Published
   Published
     Procedure TestCreateIntegerEqual;
     Procedure TestCreateIntegerEqual;
     procedure TestCreateIntegerUnEqual;
     procedure TestCreateIntegerUnEqual;
@@ -299,7 +299,7 @@ type
   Protected
   Protected
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function ExpectedResult : Boolean; override;
     Class Function ExpectedResult : Boolean; override;
-    Class Function OperatorString : String; override;
+    Class Function OperatorString : ; override;
   end;
   end;
 
 
   { TTestLessThanNode }
   { TTestLessThanNode }
@@ -311,7 +311,7 @@ type
     Class Function NodeClass : TFPBooleanResultOperationClass; virtual;
     Class Function NodeClass : TFPBooleanResultOperationClass; virtual;
     Class Function Larger : Boolean; virtual;
     Class Function Larger : Boolean; virtual;
     Class Function AllowEqual : Boolean; virtual;
     Class Function AllowEqual : Boolean; virtual;
-    Class Function OperatorString : String; virtual;
+    Class Function OperatorString : ; virtual;
     Procedure TearDown; override;
     Procedure TearDown; override;
   Published
   Published
     Procedure TestCreateIntegerEqual;
     Procedure TestCreateIntegerEqual;
@@ -343,7 +343,7 @@ type
   protected
   protected
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function AllowEqual : Boolean; override;
     Class Function AllowEqual : Boolean; override;
-    Class Function OperatorString : String; override;
+    Class Function OperatorString : ; override;
   end;
   end;
 
 
   { TTestLargerThanNode }
   { TTestLargerThanNode }
@@ -352,7 +352,7 @@ type
   protected
   protected
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function Larger : Boolean; override;
     Class Function Larger : Boolean; override;
-    Class Function OperatorString : String; override;
+    Class Function OperatorString : ; override;
   end;
   end;
   { TTestLargerThanEqualNode }
   { TTestLargerThanEqualNode }
 
 
@@ -360,7 +360,7 @@ type
   protected
   protected
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function NodeClass : TFPBooleanResultOperationClass; override;
     Class Function AllowEqual : Boolean; override;
     Class Function AllowEqual : Boolean; override;
-    Class Function OperatorString : String; override;
+    Class Function OperatorString : ; override;
   end;
   end;
 
 
   { TTestAddNode }
   { TTestAddNode }
@@ -423,7 +423,7 @@ type
   Protected
   Protected
     Procedure Setup; override;
     Procedure Setup; override;
     Procedure TearDown; override;
     Procedure TearDown; override;
-    procedure Calc(AExpr: String; Expected: Double = NaN);
+    procedure Calc(AExpr: ; Expected: Double = NaN);
   Published
   Published
     Procedure TestCreateInteger;
     Procedure TestCreateInteger;
     Procedure TestCreateFloat;
     Procedure TestCreateFloat;
@@ -498,7 +498,7 @@ type
   TTestExpressionParser = class(TTestBaseParser)
   TTestExpressionParser = class(TTestBaseParser)
   Private
   Private
     FP : TMyFPExpressionParser;
     FP : TMyFPExpressionParser;
-    FTestExpr : String;
+    FTestExpr : ;
     procedure DoAddInteger(var Result: TFPExpressionResult;
     procedure DoAddInteger(var Result: TFPExpressionResult;
       const Args: TExprParameterArray);
       const Args: TExprParameterArray);
     procedure DoDeleteString(var Result: TFPExpressionResult;
     procedure DoDeleteString(var Result: TFPExpressionResult;
@@ -511,7 +511,7 @@ type
     procedure DoEchoString(var Result: TFPExpressionResult; Const Args: TExprParameterArray);
     procedure DoEchoString(var Result: TFPExpressionResult; Const Args: TExprParameterArray);
     procedure DoGetDate(var Result: TFPExpressionResult; Const Args: TExprParameterArray);
     procedure DoGetDate(var Result: TFPExpressionResult; Const Args: TExprParameterArray);
     procedure DoParse;
     procedure DoParse;
-    procedure TestParser(AExpr: string);
+    procedure TestParser(AExpr: );
   protected
   protected
     procedure SetUp; override;
     procedure SetUp; override;
     procedure TearDown; override;
     procedure TearDown; override;
@@ -521,7 +521,7 @@ type
     Procedure AssertResult(F : TExprFloat);
     Procedure AssertResult(F : TExprFloat);
     Procedure AssertCurrencyResult(C : Currency);
     Procedure AssertCurrencyResult(C : Currency);
     Procedure AssertResult(I : Int64);
     Procedure AssertResult(I : Int64);
-    Procedure AssertResult(S : String);
+    Procedure AssertResult(S : );
     Procedure AssertResult(B : Boolean);
     Procedure AssertResult(B : Boolean);
     Procedure AssertDateTimeResult(D : TDateTime);
     Procedure AssertDateTimeResult(D : TDateTime);
   end;
   end;
@@ -728,11 +728,11 @@ type
   TTestParserVariables = Class(TTestExpressionParser)
   TTestParserVariables = Class(TTestExpressionParser)
   private
   private
     FAsWrongType : TResultType;
     FAsWrongType : TResultType;
-    FEventName: String;
+    FEventName: ;
     FBoolValue : Boolean;
     FBoolValue : Boolean;
     FTest33 : TFPExprIdentifierDef;
     FTest33 : TFPExprIdentifierDef;
     FIdentifiers : TStrings;
     FIdentifiers : TStrings;
-    procedure AddIdentifier(Sender: TObject; const aIdentifier: String; var aIdent : TFPExprIdentifierDef);
+    procedure AddIdentifier(Sender: TObject; const aIdentifier: ; var aIdent : TFPExprIdentifierDef);
     procedure DoGetBooleanVar(var Res: TFPExpressionResult; ConstRef AName: ShortString);
     procedure DoGetBooleanVar(var Res: TFPExpressionResult; ConstRef AName: ShortString);
     procedure DoGetBooleanVarWrong(var Res: TFPExpressionResult; ConstRef AName: ShortString);
     procedure DoGetBooleanVarWrong(var Res: TFPExpressionResult; ConstRef AName: ShortString);
     procedure TestAccess(Skip: TResultType);
     procedure TestAccess(Skip: TResultType);
@@ -911,23 +911,23 @@ type
   private
   private
     FValue : Integer;
     FValue : Integer;
     FM : TExprBuiltInManager;
     FM : TExprBuiltInManager;
-    FExpr : String;
+    FExpr : ;
     procedure DoAverage(Var Result : TFPExpressionResult; ConstRef AName : ShortString);
     procedure DoAverage(Var Result : TFPExpressionResult; ConstRef AName : ShortString);
     procedure DoSeries(var Result: TFPExpressionResult; ConstRef AName: ShortString);
     procedure DoSeries(var Result: TFPExpressionResult; ConstRef AName: ShortString);
   Protected
   Protected
     procedure Setup; override;
     procedure Setup; override;
     procedure Teardown; override;
     procedure Teardown; override;
-    Procedure SetExpression(Const AExpression : String);
-    Procedure AssertVariable(Const ADefinition : String; AResultType : TResultType);
-    Procedure AssertFunction(Const ADefinition,AResultType,ArgumentTypes : String; ACategory : TBuiltinCategory);
-    procedure AssertExpression(Const AExpression : String; AResult : Int64);
-    procedure AssertExpression(Const AExpression : String; Const AResult : String);
-    procedure AssertExpression(Const AExpression : String; Const AResult : TExprFloat);
-    procedure AssertExpression(Const AExpression : String; Const AResult : Boolean);
-    procedure AssertDateTimeExpression(Const AExpression : String; Const AResult : TDateTime);
-    procedure AssertAggregateExpression(Const AExpression : String; AResult : Int64; AUpdateCount : integer);
-    procedure AssertAggregateExpression(Const AExpression : String; AResult : TExprFloat; AUpdateCount : integer);
-    procedure AssertAggregateCurrExpression(Const AExpression : String; AResult : Currency; AUpdateCount : integer);
+    Procedure SetExpression(Const AExpression : );
+    Procedure AssertVariable(Const ADefinition : ; AResultType : TResultType);
+    Procedure AssertFunction(Const ADefinition,AResultType,ArgumentTypes : ; ACategory : TBuiltinCategory);
+    procedure AssertExpression(Const AExpression : ; AResult : Int64);
+    procedure AssertExpression(Const AExpression : ; Const AResult : );
+    procedure AssertExpression(Const AExpression : ; Const AResult : TExprFloat);
+    procedure AssertExpression(Const AExpression : ; Const AResult : Boolean);
+    procedure AssertDateTimeExpression(Const AExpression : ; Const AResult : TDateTime);
+    procedure AssertAggregateExpression(Const AExpression : ; AResult : Int64; AUpdateCount : integer);
+    procedure AssertAggregateExpression(Const AExpression : ; AResult : TExprFloat; AUpdateCount : integer);
+    procedure AssertAggregateCurrExpression(Const AExpression : ; AResult : Currency; AUpdateCount : integer);
   Published
   Published
     procedure TestRegister;
     procedure TestRegister;
     Procedure TestVariablepi;
     Procedure TestVariablepi;
@@ -1392,7 +1392,7 @@ end;
 procedure TTestExpressionScanner.TestTokens;
 procedure TTestExpressionScanner.TestTokens;
 
 
 Const
 Const
-  TestStrings : Array[TTokenType] of String
+  TestStrings : Array[TTokenType] of
   (*
   (*
   TTokenType = (ttPlus, ttMinus, ttLessThan, ttLargerThan, ttEqual, ttDiv,
   TTokenType = (ttPlus, ttMinus, ttLessThan, ttLargerThan, ttEqual, ttDiv,
                 ttMod, ttMul, ttLeft, ttRight, ttLessThanEqual,
                 ttMod, ttMul, ttLeft, ttRight, ttLessThanEqual,
@@ -1421,7 +1421,7 @@ begin
   TestString(FInvalidString,ttNumber);
   TestString(FInvalidString,ttNumber);
 end;
 end;
 
 
-procedure TTestExpressionScanner.DoInvalidNumber(AString : String);
+procedure TTestExpressionScanner.DoInvalidNumber(AString : );
 
 
 begin
 begin
   FInvalidString:=AString;
   FInvalidString:=AString;
@@ -1466,7 +1466,7 @@ begin
   TestString('''s it''''''',ttString);
   TestString('''s it''''''',ttString);
 end;
 end;
 
 
-procedure TTestExpressionScanner.TestIdentifier(Const ASource,ATokenName : string);
+procedure TTestExpressionScanner.TestIdentifier(Const ASource,ATokenName : );
 
 
 begin
 begin
   FP.Source:=ASource;
   FP.Source:=ASource;
@@ -1497,11 +1497,11 @@ begin
   FreeAndNil(FP);
   FreeAndNil(FP);
 end;
 end;
 
 
-procedure TTestExpressionScanner.AssertEquals(Msg: string; AExpected,
+procedure TTestExpressionScanner.AssertEquals(Msg: ; AExpected,
   AActual: TTokenType);
   AActual: TTokenType);
 
 
 Var
 Var
-  S1,S2 : String;
+  S1,S2 : ;
 
 
 begin
 begin
   S1:=TokenName(AExpected);
   S1:=TokenName(AExpected);
@@ -1509,7 +1509,7 @@ begin
   AssertEquals(Msg,S1,S2);
   AssertEquals(Msg,S1,S2);
 end;
 end;
 
 
-procedure TTestExpressionScanner.TestString(const AString: String;
+procedure TTestExpressionScanner.TestString(const AString: ;
   AToken: TTokenType);
   AToken: TTokenType);
 begin
 begin
   FP.Source:=AString;
   FP.Source:=AString;
@@ -1529,21 +1529,21 @@ begin
   FCheckNode.Check;
   FCheckNode.Check;
 end;
 end;
 
 
-procedure TTestBaseParser.AssertNodeType(Msg: String; AClass: TClass;
+procedure TTestBaseParser.AssertNodeType(Msg: ; AClass: TClass;
   ANode: TFPExprNode);
   ANode: TFPExprNode);
 begin
 begin
   AssertNotNull(Msg+': Not null',ANode);
   AssertNotNull(Msg+': Not null',ANode);
   AssertEquals(Msg+': Class OK',AClass,ANode.ClassType);
   AssertEquals(Msg+': Class OK',AClass,ANode.ClassType);
 end;
 end;
 
 
-procedure TTestBaseParser.AssertEquals(Msg: String; AResultType: TResultType;
+procedure TTestBaseParser.AssertEquals(Msg: ; AResultType: TResultType;
   ANode: TFPExprNode);
   ANode: TFPExprNode);
 begin
 begin
   AssertNotNull(Msg+': Node not null',ANode);
   AssertNotNull(Msg+': Node not null',ANode);
   AssertEquals(Msg,AResultType,Anode.NodeType);
   AssertEquals(Msg,AResultType,Anode.NodeType);
 end;
 end;
 
 
-procedure TTestBaseParser.AssertEquals(Msg: String; AExpected,
+procedure TTestBaseParser.AssertEquals(Msg: ; AExpected,
   AActual: TResultType);
   AActual: TResultType);
 
 
 begin
 begin
@@ -1560,7 +1560,7 @@ begin
   Result:=TFPConstExpression.CreateFloat(AFloat);
   Result:=TFPConstExpression.CreateFloat(AFloat);
 end;
 end;
 
 
-function TTestBaseParser.CreateStringNode(Astring: String): TFPExprNode;
+function TTestBaseParser.CreateStringNode(Astring: ): TFPExprNode;
 begin
 begin
   Result:=TFPConstExpression.CreateString(AString);
   Result:=TFPConstExpression.CreateString(AString);
 end;
 end;
@@ -1574,7 +1574,7 @@ procedure TTestBaseParser.AssertNodeOK(FN: TFPExprNode);
 
 
 Var
 Var
   B : Boolean;
   B : Boolean;
-  Msg : String;
+  Msg : ;
 
 
 begin
 begin
   AssertNotNull('Node to test OK',FN);
   AssertNotNull('Node to test OK',FN);
@@ -1590,7 +1590,7 @@ begin
     Fail(Format('Node %s not OK: %s',[FN.ClassName,Msg]));
     Fail(Format('Node %s not OK: %s',[FN.ClassName,Msg]));
 end;
 end;
 
 
-procedure TTestBaseParser.AssertNodeNotOK(const MSg : String; FN: TFPExprNode);
+procedure TTestBaseParser.AssertNodeNotOK(const MSg : ; FN: TFPExprNode);
 begin
 begin
   FCheckNode:=FN;
   FCheckNode:=FN;
   AssertException(Msg,EExprParser,@DoCheck);
   AssertException(Msg,EExprParser,@DoCheck);
@@ -1657,7 +1657,7 @@ procedure TTestConstExprNode.TestCreateDateTime;
 
 
 Var
 Var
   D : TDateTime;
   D : TDateTime;
-  S : String;
+  S : ;
 
 
 begin
 begin
   D:=Now;
   D:=Now;
@@ -1672,7 +1672,7 @@ end;
 procedure TTestConstExprNode.TestCreateString;
 procedure TTestConstExprNode.TestCreateString;
 
 
 Var
 Var
-  S : String;
+  S : ;
 
 
 begin
 begin
   S:='Ohlala';
   S:='Ohlala';
@@ -1705,7 +1705,7 @@ end;
 procedure TTestNegateExprNode.TestCreateFloat;
 procedure TTestNegateExprNode.TestCreateFloat;
 
 
 Var
 Var
-  S : String;
+  S : ;
 
 
 begin
 begin
   FN:=TFPNegateOperation.Create(CreateFloatNode(1.23));
   FN:=TFPNegateOperation.Create(CreateFloatNode(1.23));
@@ -1956,7 +1956,7 @@ begin
   Result:=True
   Result:=True
 end;
 end;
 
 
-class function TTestEqualNode.OperatorString: String;
+class function TTestEqualNode.OperatorString: ;
 begin
 begin
   Result:='=';
   Result:='=';
 end;
 end;
@@ -2108,7 +2108,7 @@ begin
   Result:=False;
   Result:=False;
 end;
 end;
 
 
-class function TTestUnEqualNode.OperatorString: String;
+class function TTestUnEqualNode.OperatorString: ;
 begin
 begin
   Result:='<>';
   Result:='<>';
 end;
 end;
@@ -2130,7 +2130,7 @@ begin
   Result:=False;
   Result:=False;
 end;
 end;
 
 
-class function TTestLessThanNode.OperatorString: String;
+class function TTestLessThanNode.OperatorString: ;
 begin
 begin
   Result:='<';
   Result:='<';
 end;
 end;
@@ -2318,7 +2318,7 @@ begin
   Result:=True;
   Result:=True;
 end;
 end;
 
 
-class function TTestLessThanEqualNode.OperatorString: String;
+class function TTestLessThanEqualNode.OperatorString: ;
 begin
 begin
   Result:='<=';
   Result:='<=';
 end;
 end;
@@ -2335,7 +2335,7 @@ begin
   Result:=True;
   Result:=True;
 end;
 end;
 
 
-class function TTestLargerThanNode.OperatorString: String;
+class function TTestLargerThanNode.OperatorString: ;
 begin
 begin
   Result:='>';
   Result:='>';
 end;
 end;
@@ -2352,7 +2352,7 @@ begin
   Result:=True;
   Result:=True;
 end;
 end;
 
 
-class function TTestLargerThanEqualNode.OperatorString: String;
+class function TTestLargerThanEqualNode.OperatorString: ;
 begin
 begin
   Result:='>=';
   Result:='>=';
 end;
 end;
@@ -2553,7 +2553,7 @@ begin
   FE.Builtins := [bcMath];
   FE.Builtins := [bcMath];
 end;
 end;
 
 
-procedure TTestPowerNode.Calc(AExpr: String; Expected: Double =NaN);
+procedure TTestPowerNode.Calc(AExpr: ; Expected: Double =NaN);
 const
 const
   EPS = 1e-9;
   EPS = 1e-9;
 var
 var
@@ -2825,7 +2825,7 @@ end;
 procedure TTestFloatToDateTimeNode.TestAsString;
 procedure TTestFloatToDateTimeNode.TestAsString;
 
 
 Var
 Var
-  S : String;
+  S : ;
 
 
 begin
 begin
   FN:=TFloatToDateTimeNode.Create(CreateFloatNode(1.2));
   FN:=TFloatToDateTimeNode.Create(CreateFloatNode(1.2));
@@ -2860,7 +2860,7 @@ begin
   FP.Expression:=FTestExpr;
   FP.Expression:=FTestExpr;
 end;
 end;
 
 
-procedure TTestExpressionParser.TestParser(AExpr : string);
+procedure TTestExpressionParser.TestParser(AExpr : );
 
 
 begin
 begin
   FTestExpr:=AExpr;
   FTestExpr:=AExpr;
@@ -2913,9 +2913,9 @@ begin
   AssertEquals('Correct integer result',I,FP.Evaluate.ResInteger);
   AssertEquals('Correct integer result',I,FP.Evaluate.ResInteger);
 end;
 end;
 
 
-procedure TTestExpressionParser.AssertResult(S: String);
+procedure TTestExpressionParser.AssertResult(S: );
 begin
 begin
-  AssertEquals('Correct string result',S,FP.ExprNode.NodeValue.ResString);
+  AssertEquals('Correct  result',S,FP.ExprNode.NodeValue.ResString);
   AssertEquals('Correct string result',S,FP.Evaluate.ResString);
   AssertEquals('Correct string result',S,FP.Evaluate.ResString);
 end;
 end;
 
 
@@ -2940,7 +2940,7 @@ end;
 
 
 procedure TTestParserExpressions.TestNumberValues;
 procedure TTestParserExpressions.TestNumberValues;
 
 
-  Procedure DoTest(E :  String; V : integer);
+  Procedure DoTest(E :  ; V : integer);
 
 
   var
   var
     res: TFPExpressionResult;
     res: TFPExpressionResult;
@@ -5016,7 +5016,7 @@ begin
   Res.ResBoolean:=FBoolValue;
   Res.ResBoolean:=FBoolValue;
 end;
 end;
 
 
-procedure TTestParserVariables.AddIdentifier(Sender: TObject; const aIdentifier: String; var aIdent : TFPExprIdentifierDef);
+procedure TTestParserVariables.AddIdentifier(Sender: TObject; const aIdentifier: ; var aIdent : TFPExprIdentifierDef);
 begin
 begin
   aIdent:=Nil;
   aIdent:=Nil;
   AssertNotNull('Have identifier list',FIdentifiers);
   AssertNotNull('Have identifier list',FIdentifiers);
@@ -5044,7 +5044,7 @@ begin
 end;
 end;
 
 
 Var
 Var
-  FVarCallBackName:String;
+  FVarCallBackName:;
   FVarBoolValue : Boolean;
   FVarBoolValue : Boolean;
 
 
 procedure DoGetBooleanVar2(var Res: TFPExpressionResult; ConstRef AName: ShortString);
 procedure DoGetBooleanVar2(var Res: TFPExpressionResult; ConstRef AName: ShortString);
@@ -6097,10 +6097,10 @@ begin
   inherited Teardown;
   inherited Teardown;
 end;
 end;
 
 
-procedure TTestBuiltins.SetExpression(const AExpression: String);
+procedure TTestBuiltins.SetExpression(const AExpression: );
 
 
 Var
 Var
-  Msg : String;
+  Msg : ;
 
 
 begin
 begin
   Msg:='';
   Msg:='';
@@ -6114,7 +6114,7 @@ begin
     Fail('Parsing of expression "'+AExpression+'" failed :'+Msg);
     Fail('Parsing of expression "'+AExpression+'" failed :'+Msg);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertVariable(const ADefinition: String;
+procedure TTestBuiltins.AssertVariable(const ADefinition: ;
   AResultType: TResultType);
   AResultType: TResultType);
 
 
 Var
 Var
@@ -6127,7 +6127,7 @@ begin
 end;
 end;
 
 
 procedure TTestBuiltins.AssertFunction(const ADefinition, AResultType,
 procedure TTestBuiltins.AssertFunction(const ADefinition, AResultType,
-  ArgumentTypes: String; ACategory : TBuiltinCategory);
+  ArgumentTypes: ; ACategory : TBuiltinCategory);
 
 
 Var
 Var
   I : TFPBuiltinExprIdentifierDef;
   I : TFPBuiltinExprIdentifierDef;
@@ -6141,7 +6141,7 @@ begin
   AssertEquals(ADefinition+' has correct category',Ord(ACategory),Ord(I.Category));
   AssertEquals(ADefinition+' has correct category',Ord(ACategory),Ord(I.Category));
 end;
 end;
 
 
-procedure TTestBuiltins.AssertExpression(const AExpression: String;
+procedure TTestBuiltins.AssertExpression(const AExpression: ;
   AResult: Int64);
   AResult: Int64);
 
 
 begin
 begin
@@ -6150,15 +6150,15 @@ begin
   AssertResult(AResult);
   AssertResult(AResult);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertExpression(const AExpression: String;
-  const AResult: String);
+procedure TTestBuiltins.AssertExpression(const AExpression: ;
+  const AResult: );
 begin
 begin
   FP.BuiltIns:=AllBuiltIns;
   FP.BuiltIns:=AllBuiltIns;
   SetExpression(AExpression);
   SetExpression(AExpression);
   AssertResult(AResult);
   AssertResult(AResult);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertExpression(const AExpression: String;
+procedure TTestBuiltins.AssertExpression(const AExpression: ;
   const AResult: TExprFloat);
   const AResult: TExprFloat);
 begin
 begin
   FP.BuiltIns:=AllBuiltIns;
   FP.BuiltIns:=AllBuiltIns;
@@ -6166,7 +6166,7 @@ begin
   AssertResult(AResult);
   AssertResult(AResult);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertExpression(const AExpression: String;
+procedure TTestBuiltins.AssertExpression(const AExpression: ;
   const AResult: Boolean);
   const AResult: Boolean);
 begin
 begin
   FP.BuiltIns:=AllBuiltIns;
   FP.BuiltIns:=AllBuiltIns;
@@ -6174,7 +6174,7 @@ begin
   AssertResult(AResult);
   AssertResult(AResult);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertDateTimeExpression(const AExpression: String;
+procedure TTestBuiltins.AssertDateTimeExpression(const AExpression: ;
   const AResult: TDateTime);
   const AResult: TDateTime);
 begin
 begin
   FP.BuiltIns:=AllBuiltIns;
   FP.BuiltIns:=AllBuiltIns;
@@ -6182,7 +6182,7 @@ begin
   AssertDatetimeResult(AResult);
   AssertDatetimeResult(AResult);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertAggregateExpression(const AExpression: String;
+procedure TTestBuiltins.AssertAggregateExpression(const AExpression: ;
   AResult: Int64; AUpdateCount: integer);
   AResult: Int64; AUpdateCount: integer);
 begin
 begin
   FP.BuiltIns:=AllBuiltIns;
   FP.BuiltIns:=AllBuiltIns;
@@ -6197,7 +6197,7 @@ begin
   AssertResult(AResult);
   AssertResult(AResult);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertAggregateExpression(const AExpression: String;
+procedure TTestBuiltins.AssertAggregateExpression(const AExpression: ;
   AResult: TExprFloat; AUpdateCount: integer);
   AResult: TExprFloat; AUpdateCount: integer);
 begin
 begin
   FP.BuiltIns:=AllBuiltIns;
   FP.BuiltIns:=AllBuiltIns;
@@ -6212,7 +6212,7 @@ begin
   AssertResult(AResult);
   AssertResult(AResult);
 end;
 end;
 
 
-procedure TTestBuiltins.AssertAggregateCurrExpression(Const AExpression : String; AResult : Currency; AUpdateCount : integer);
+procedure TTestBuiltins.AssertAggregateCurrExpression(Const AExpression : ; AResult : Currency; AUpdateCount : integer);
 
 
 begin
 begin
   FP.BuiltIns:=AllBuiltIns;
   FP.BuiltIns:=AllBuiltIns;
@@ -6647,7 +6647,7 @@ end;
 procedure TTestBuiltins.TestFunctionstrtofloat;
 procedure TTestBuiltins.TestFunctionstrtofloat;
 
 
 Var
 Var
-  S : String;
+  S : ;
 
 
 begin
 begin
   S:='1.23';
   S:='1.23';
@@ -6731,7 +6731,7 @@ procedure TTestBuiltins.TestFunctionstrtodatetime;
 
 
 Var
 Var
   T : TDateTime;
   T : TDateTime;
-  S : String;
+  S : ;
 
 
 begin
 begin
   T:=Now;
   T:=Now;
@@ -6743,7 +6743,7 @@ procedure TTestBuiltins.TestFunctionstrtodatetimedef;
 
 
 Var
 Var
   T : TDateTime;
   T : TDateTime;
-  S : String;
+  S : ;
 
 
 begin
 begin
   T:=Now;
   T:=Now;

Some files were not shown because too many files changed in this diff