[ 
https://issues.apache.org/jira/browse/THRIFT-5656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5656:
-------------------------------
    Description: 
Currently the Delphi compiler does not differentiate between real Delphi 
language keywords (that can be escaped via & prefix) and predefined names/types 
that must be handled differently (we do this by adding a underscore postfix so 
it becomes e.g. 'System_' instead of 'System' which would collide with the 
Delphi runtime unit of that name).

This patch addresses this and handles keywords properly with '&' by 
{+}default{+}.

{*}Compatibility{*}: This may break code if one of the Delphi keywords has been 
used in the IDL. 

{*}Workaround{*}. The old behaviour can be restored via Thrift compiler switch.

  was:
Currently the Delphi compiler does not differentiate between real Delphi 
language keywords (that can be escaped via & prefix) and predefined names/types 
that must be handled differently (we do this by adding a '_' postfix so it 
becomes e.g. 'System_' instead of 'System' which would collide with the Delphi 
runtime unit of that name).

This patch addresses this and handles keywords properly. 

The old behaviour can be restored via Thrift compiler switch.


> Escape Delphi keywords with '&' prefix instead of '_' suffix
> ------------------------------------------------------------
>
>                 Key: THRIFT-5656
>                 URL: https://issues.apache.org/jira/browse/THRIFT-5656
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Delphi - Compiler
>            Reporter: Jens Geyer
>            Assignee: Jens Geyer
>            Priority: Major
>              Labels: breaking_change
>
> Currently the Delphi compiler does not differentiate between real Delphi 
> language keywords (that can be escaped via & prefix) and predefined 
> names/types that must be handled differently (we do this by adding a 
> underscore postfix so it becomes e.g. 'System_' instead of 'System' which 
> would collide with the Delphi runtime unit of that name).
> This patch addresses this and handles keywords properly with '&' by 
> {+}default{+}.
> {*}Compatibility{*}: This may break code if one of the Delphi keywords has 
> been used in the IDL. 
> {*}Workaround{*}. The old behaviour can be restored via Thrift compiler 
> switch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to