[ https://issues.apache.org/jira/browse/THRIFT-1212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13052078#comment-13052078 ]
Bryan Duxbury commented on THRIFT-1212: --------------------------------------- bq. I can't change idl file because it'll break protocol This is false. If you do nothing but change names, it'll work just fine. The bottom line is that I am generally against behavior that users will see as predictable. I would rather add a constraint that says structs can't have members with the same name - in any language - or change the way that the C# generator names its 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