Anton Shchyrov created THRIFT-4461:
--------------------------------------
Summary: Invalid compiler directive
Key: THRIFT-4461
URL: https://issues.apache.org/jira/browse/THRIFT-4461
Project: Thrift
Issue Type: Bug
Components: Delphi - Library
Affects Versions: 0.11.0
Environment: Delphi XE3
Reporter: Anton Shchyrov
Attachments: Thrift.Utils.diff
In module Thrift.Utils daclared two methods
{{class function CharUtils.IsHighSurrogate( const c : Char) : Boolean;}}
{{begin}}
{{ \{$IF CompilerVersion < 23.0}}}
{{ result := Character.IsHighSurrogate( c);}}
{{ \{$ELSE}}}
{{ result := c.IsHighSurrogate();}}
{{ \{$IFEND}}}
{{end;}}
{{class function CharUtils.IsLowSurrogate( const c : Char) : Boolean;}}
{{begin}}
{{ \{$IF CompilerVersion < 23.0}}}
{{ result := Character.IsLowSurrogate( c);}}
{{ \{$ELSE}}}
{{ result := c.IsLowSurrogate;}}
{{ \{$IFEND}}}
{{end;}}
But methods Char.IsHighSurrogate()/Char.IsLowSurrogate() **appeared in Delphi
XE4. For Delphi XE4 variable CompilerVersion equal 25.
In this way condition
{{{$IF CompilerVersion < 23.0}}}
may be changed to
{{{$IF CompilerVersion < *25.0*}}}
And access for unit *Character* may be determined through defiine symbol
*OLD_UNIT_NAMES*
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)