Fixes are available
XL C/C++ for Linux Fix Pack 8 (October 2015 Update) for 12.1
XL C/C++ for Linux Fix Pack 4 (October 2013 Update) for 12.1
XL C/C++ for Linux Fix Pack 5 (December 2013 Update) for 12.1
XL C/C++ for Linux Fix Pack 6 (February 2014 Update) for 12.1
XL C/C++ for Linux Fix Pack 7 (May 2014 Update) for 12.1
APAR status
Closed as program error.
Error description
The compiler incorrectly emits the following error message for the following test case: =====Compile Command: xlC -qtmplparse=error a.cpp -c =====Testcase: $ cat a.cpp template <class A> struct testable_handle{}; template<typename T> struct tunable { template<class T2> bool operator >= (const testable_handle<T>&) ; // not allowed template<class T2> bool operator >= (const testable_handle<T2>&) ; // not allowed }; $ ======ACTUAL OUTPUT: $ xlC -qtmplparse=error a.cpp -c "a.cpp", line 8.14: 1540-0401 (S) The member "template <class T2> tunable::operator>=(const testable_handle<T2> &)" is already declared. ======EXPECTED OUTPUT: "a.cpp", line 6.14: 1540-0424 (I) "operator>=" is declared on line 6 of "a.cpp". $
Local fix
N/A
Problem summary
USERS AFFECTED: The error may be seen in a template class when there are overloaded template member functions some using the class template parameters and some not. PROBLEM DESCRIPTION: The compiler emits an error on overloaded template member function.
Problem conclusion
The compiler issue has been resolved.
Temporary fix
Comments
APAR Information
APAR number
LI77621
Reported component name
XL C/C++ FOR LI
Reported component ID
5725C7300
Reported release
C10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-10-28
Closed date
2013-10-28
Last modified date
2013-10-28
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
XL C/C++ FOR LI
Fixed component ID
5725C7300
Applicable component levels
RC10 PSN IV38824
UP06/09/13
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSXVZZ","label":"XL C\/C++ for Linux"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"12.1","Line of Business":{"code":"LOB57","label":"Power"}}]
Document Information
Modified date:
14 October 2021