Fixes are available
XL C/C++ for Linux Fix Pack 9 (August 2013 Update) for 11.1
April 2011 Update for XL C/C++ for Linux, V11.1
July 2011 Update for XL C/C++ for Linux, V11.1
October 2011 Update for XL C/C++ for Linux, V11.1
June 2012 Update for XL C/C++ for Linux, V11.1
October 2012 Update for XL C/C++ for Linux, V11.1
XL C/C++ for Linux Fix Pack 8 (June 2013 Update) for 11.1
APAR status
Closed as program error.
Error description
The following testcase reproduces the error message: ========================b.cpp=========================== template<typename Other, int Rows=Other::Rows> struct EI { typedef int ResultType; }; struct Matrix { enum { Rows = 1 }; }; struct Transform { template<typename OtherDerived> const typename EI<OtherDerived>::ResultType operator * (const OtherDerived &other); }; void test() { Transform t0; Matrix m0; t0 * m0; } ========================b.cpp=========================== Compile b.cpp file: xlc -c b.cpp "b.cpp", line 24.7: 1540-0218 (S) The call does not match any parameter list for "operator*". "b.cpp", line 17.3: 1540-1283 (I) "template <class OtherDerived> Transform::operator*(const OtherDerived &)" is not a viable candidate. "b.cpp", line 24.7: 1540-0130 (I) "Other" is not declared. "b.cpp", line 24.7: 1540-0700 (I) The previous message was produced while processing "operator*".
Local fix
N/A
Problem summary
For default template arguments, template argument substitution only substitutes the last part of a qualified name.
Problem conclusion
Changing name substitution routine to take the entire qualified name into account.
Temporary fix
Comments
APAR Information
APAR number
LI76113
Reported component name
XL C/C++ FOR LI
Reported component ID
5724X1400
Reported release
B10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2011-04-27
Closed date
2011-04-27
Last modified date
2011-04-27
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
5724X1400
Applicable component levels
RB10 PSN LI75628
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":"B10","Line of Business":{"code":"LOB57","label":"Power"}}]
Document Information
Modified date:
17 October 2021