Fixes are available
September 2012 Update for XL C/C++ for Linux, V12.1
April 2013 Update for XL C/C++ for Linux, V12.1
XL C/C++ for Linux Fix Pack 8 (October 2015 Update) for 12.1
December 2012 Update for XL C/C++ for Linux, V12.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 generates an incorrect template message for the following test case: =====Compile Command: xlC -c b.cc =====Testcase: $cat b.cc template <int, int> struct Tensor {}; template <int dim> class Tensor<0,dim> {}; template <int dim> struct X { template <int spacedim> void foo (Tensor<spacedim-dim,spacedim>) {} }; template void X<1>::foo (Tensor<1-1,1>); $ =====Action Output: $xlC -c b.cc "b.cc", line 10.21: 1540-0288 (S) The function template parameter of type "Tensor<spacedim-(int) (1),spacedim>" cannot be initialized with an argument of type "Tensor<0,1>". $ =====Expected Output: Should compile without any errors.
Local fix
n/a
Problem summary
USERS AFFECTED: The problem may be seen where a non-type template argument is used in a non-deduced context before arguments using it in a deducable context. PROBLEM DESCRIPTION: The use of a non-type template argument in a non-deduced context was stopping argument deduction in later arguments.
Problem conclusion
The above compiler problem has been resolved.
Temporary fix
Comments
APAR Information
APAR number
LI76934
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
2012-08-28
Closed date
2012-08-28
Last modified date
2012-08-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 IV19832
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:
16 October 2021