[
https://issues.apache.org/jira/browse/THRIFT-1603?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13572731#comment-13572731
]
Jens Geyer edited comment on THRIFT-1603 at 2/6/13 7:44 PM:
------------------------------------------------------------
{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.- No, it can't. This test
checks for duplicate IDs, not names.
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?
was (Author: jensg):
{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