mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-12 09:09:37 +02:00
108 lines
2.2 KiB
ObjectPascal
108 lines
2.2 KiB
ObjectPascal
program tcpstr23;
|
|
|
|
{$MODE DELPHI}
|
|
|
|
type
|
|
cp1251string = type AnsiString(1251);
|
|
|
|
// --- all string types ---
|
|
procedure test_overload1(const s: ShortString); overload;
|
|
begin
|
|
end;
|
|
procedure test_overload1(const s: UTF8String); overload;
|
|
begin
|
|
halt(1);
|
|
end;
|
|
procedure test_overload1(const s: AnsiString); overload;
|
|
begin
|
|
halt(1);
|
|
end;
|
|
procedure test_overload1(const s: cp1251string); overload;
|
|
begin
|
|
halt(1);
|
|
end;
|
|
procedure test_overload1(const s: unicodestring); overload;
|
|
begin
|
|
halt(1);
|
|
end;
|
|
{$ifndef FPC_WIDESTRING_EQUAL_UNICODESTRING}
|
|
procedure test_overload1(const s: widestring); overload;
|
|
begin
|
|
halt(1);
|
|
end;
|
|
{$endif}
|
|
// --- no ShortString ---
|
|
procedure test_overload2(const s: UTF8String); overload;
|
|
begin
|
|
end;
|
|
procedure test_overload2(const s: AnsiString); overload;
|
|
begin
|
|
halt(2);
|
|
end;
|
|
procedure test_overload2(const s: cp1251string); overload;
|
|
begin
|
|
halt(2);
|
|
end;
|
|
procedure test_overload2(const s: unicodestring); overload;
|
|
begin
|
|
halt(2);
|
|
end;
|
|
{$ifndef FPC_WIDESTRING_EQUAL_UNICODESTRING}
|
|
procedure test_overload2(const s: widestring); overload;
|
|
begin
|
|
halt(2);
|
|
end;
|
|
{$endif}
|
|
// --- no ShortString, UTF8String ---
|
|
procedure test_overload3(const s: AnsiString); overload;
|
|
begin
|
|
end;
|
|
procedure test_overload3(const s: cp1251string); overload;
|
|
begin
|
|
halt(3);
|
|
end;
|
|
procedure test_overload3(const s: unicodestring); overload;
|
|
begin
|
|
halt(3);
|
|
end;
|
|
{$ifndef FPC_WIDESTRING_EQUAL_UNICODESTRING}
|
|
procedure test_overload3(const s: widestring); overload;
|
|
begin
|
|
halt(3);
|
|
end;
|
|
{$endif}
|
|
// --- no ShortString, UTF8String, AnsiString ---
|
|
procedure test_overload4(const s: cp1251string); overload;
|
|
begin
|
|
end;
|
|
procedure test_overload4(const s: unicodestring); overload;
|
|
begin
|
|
halt(4);
|
|
end;
|
|
{$ifndef FPC_WIDESTRING_EQUAL_UNICODESTRING}
|
|
procedure test_overload4(const s: widestring); overload;
|
|
begin
|
|
halt(4);
|
|
end;
|
|
// --- no ShortString, UTF8String, AnsiString, AnsiString(codepage) ---
|
|
procedure test_overload5(const s: unicodestring); overload;
|
|
begin
|
|
end;
|
|
procedure test_overload5(const s: widestring); overload;
|
|
begin
|
|
halt(5);
|
|
end;
|
|
{$endif}
|
|
|
|
var
|
|
S: ShortString;
|
|
begin
|
|
test_overload1(S);
|
|
test_overload2(S);
|
|
test_overload3(S);
|
|
test_overload4(S);
|
|
{$ifndef FPC_WIDESTRING_EQUAL_UNICODESTRING}
|
|
test_overload5(S);
|
|
{$endif}
|
|
end.
|