[ 
https://issues.apache.org/jira/browse/THRIFT-1212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13052069#comment-13052069
 ] 

Vadim Chekan commented on THRIFT-1212:
--------------------------------------

What interface consumer can do than? Lets take me as an example. I'm compiling 
C# binding for Hive. I can't change idl file because it'll break protocol. I 
could report it to Hive folks and ask to change idl, but it is unlikely tey 
will be inclined to break their protocol compatibility to satisfy C# folks.

Plus I do not see a reason to throw exception when situation can be perfectly 
handled. May be warning, or additional comments above mutated members.

> Members capital case conflict
> -----------------------------
>
>                 Key: THRIFT-1212
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1212
>             Project: Thrift
>          Issue Type: Bug
>          Components: C# - Compiler
>    Affects Versions: 0.6.1
>         Environment: Windows 7
>            Reporter: Vadim Chekan
>            Priority: Minor
>
> When generating "csharp" target off the following structure:
> ===
> struct Order {
>   1: string col,  // sort column name
>   2: i32    order // asc(1) or desc(0)
> }
> ===
> the code is generated:
> class Order { public int Order ...
> This code fails to compile in C# compiler because member name is the same as 
> containing clsss  name, which is invalid in C#.
> Perhaps there must be a check when generating members and if capitalized 
> member name turns out to be the same as containing class name, then prepend 
> it with underscore.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to