[ https://issues.apache.org/jira/browse/THRIFT-1603?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13572731#comment-13572731 ]
Jens Geyer commented on THRIFT-1603: ------------------------------------ {code} if (bounds.first != bounds.second) { return false; } // some more code members_in_id_order_.insert(bounds.second, elem); {code} {quote} won't [this comparison] produce an incomprehensible error message? {quote} Agree. The test will detect the +third+ field inserted with the same key, but not the second. I guess the test can be removed. Additionally, I'm questioning the insert() even more. Can we, according to http://www.cplusplus.com/reference/algorithm/equal_range, really be sure that {code}bounds.second{code} always has the right value? Shouldn't it be better {code} members_in_id_order_.insert( elem.get_key(), elem); {code} instead? > Thrift IDL allows for multiple exceptions, args or struct member names to be > the same > ------------------------------------------------------------------------------------- > > Key: THRIFT-1603 > URL: https://issues.apache.org/jira/browse/THRIFT-1603 > Project: Thrift > Issue Type: Bug > Environment: RedHat 5.5, C++, thrift-0.8.0 > Reporter: Michael Popovich > Assignee: Kamil Sałaś > Priority: Trivial > Fix For: 1.0 > > Attachments: > 0001-Thrift-1603-Provide-unique-names-for-t_struct-elemen.patch > > > I noticed that the Thrift IDL compiler allows for multiple exceptions > instances to utilize the same name... This is a problem because when > compiling to C++, the generated C++ code will not compile properly: > service whatever > { > void insert(1: string s) throws (1: NS nst, WX wxx, NSTx nst), > } -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira