anchor.diff:  begin
   //  Logger.EnterMethod(Self, 'InternalInitRecord');
     for I := 0 to Fields.Count - 1 do
  -    PVariantList(Buffer + SizeOf(TRecordInfo))[I]{$IFDEF FPC}[0]{$ENDIF} := 0;
  +    PVariantList(Buffer + SizeOf(TRecordInfo))[I] := 0; //{$IFDEF FPC}[0]{$ENDIF} := 0;
   //  Logger.ExitMethod(Self, 'InternalInitRecord');
   end;
   
  
positive.code:             PAnsiChar(ABuffer)[0] := #0
            else
            begin
              {$IFDEF FPC}
              raise Exception.Create('not supported');
              {$ELSE}
              WideCharToMultiByte(0, 0, tagVariant(AVariant).bStrVal,
                Size + 1, ABuffer,
  
negative.code:   {$IFDEF FPC}
    TempWideStr : WideString;
    TempWideChar: WideChar;
    TempVariant : Variant;
    {$ENDIF}
  begin
  //  Logger.EnterMethod(Self, 'VariantToBuffer');
  