using 'using' to disambiguate between functions in different bases does not
conform to C++ standard and will not compile on certain compilers
---------------------------------------------------------------------------------------------------------------------------------------------
Key: THRIFT-1244
URL: https://issues.apache.org/jira/browse/THRIFT-1244
Project: Thrift
Issue Type: Bug
Components: C++ - Library
Affects Versions: 0.6
Reporter: Anatoly Fayngelerin
Assignee: Anatoly Fayngelerin
Priority: Minor
Fix For: 0.7
Currently in transport/TBufferTransports.h three classes have code of the form
bq.using TBufferBase::readAll;
This code is attempting to disambiguate between the readAll function provided
by TBufferBase and TVirtualTransport < T, TBufferBase >. This compile and works
under GCC. However, this does not conform to the C++ standard. Other
compilers(such as Comeau) will report compilation errors because of this code.
Here is a related bug filed with gcc:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32039
I am attaching a patch that explicitly declares readAll and implements it by
calling TBufferBase::readAll.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira