[
https://issues.apache.org/jira/browse/THRIFT-895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12908054#action_12908054
]
Bruce Lowekamp commented on THRIFT-895:
---------------------------------------
For Erlang, again, it could be fixed, but the code right now generates:
-define{<service>_<key>,1}
for each key. so it would be simple to change it to
-define{<service>_<enum_name>_<key>, 1}
to get rid of the conflict, but all referencing code would have to change.
> Thrift compiler does not allow two different enumerations to have the same
> key name for one of the enum values
> --------------------------------------------------------------------------------------------------------------
>
> Key: THRIFT-895
> URL: https://issues.apache.org/jira/browse/THRIFT-895
> Project: Thrift
> Issue Type: Bug
> Components: Compiler (General)
> Affects Versions: 0.4
> Reporter: Tony Kinnis
> Assignee: Bryan Duxbury
> Priority: Critical
> Fix For: 0.5
>
> Attachments: test.thrift
>
>
> As of version 0.4.0 the Thrift compiler no longer allows two different enums
> to have a key with the same name. It seems that this change was introduced by
> the patch for THRIFT-544. Particularly the patch labeled:
> thrift-544_prevent_redefining_consts.patch.
> The problem with this patch is that it now blocks this seemingly valid
> definition.
> enum Foo {
> A=1,
> B=2
> }
> enum Bar {
> A=1,
> B=2
> }
> If I then run the thrift compiler as follows....
> thrift --gen java test.thrift
> It will tell me that: test.thrift:7] Enum A is already defined!
> However, this should be valid and has worked in previous versions of Thrift.
> I believe this patch (thrift-544_prevent_redefining_consts.patch) should be
> rolled back.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.