A fix is available
APAR status
Closed as program error.
Error description
A template instantiation error is seen for a template class's inline template function, that does not use a defined default type from the template class's instantiation type. For example, an inline constructor: template < typename T, typename MYTYPE = default_type<T> > class A { template < typename MYTYPETYPE> A( MYTYPETYPE value ); }; template < typename T, typename MYTYPE > template < typename MYTYPETYPE > inline A< MYTYPE >::A( MYTYPETYPE value) { } ... A< char, not_default_type<char> >; The output error: 1540-0295 (S) A parameter of type "not_default_type<char> &" cannot be initialized with an rvalue of type "default_type<char>".
Local fix
N/A
Problem summary
PROBLEM DESCRIPTION: An unused default template argument was being used in an instantiation causing a compiler error. USERS AFFECTED: The problem is very specific: a template class with a default template argument has a member template function with a default function argument, the default function argument references the template parameter with the default argument from the enclosing class, that member template function is defined out-of-line AND the template parameter has the same name as the class definition.
Problem conclusion
The problem has been resolved.
Temporary fix
Comments
APAR Information
APAR number
IV35718
Reported component name
XL C/C++ FOR AI
Reported component ID
5725C7200
Reported release
C10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-01-22
Closed date
2013-03-12
Last modified date
2013-03-13
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
LI77324
Fix information
Fixed component name
XL C/C++ FOR AI
Fixed component ID
5725C7200
Applicable component levels
RC10 PSY U858524
UP C
Rate this page:
Average rating
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.