Fixes are available
XL C/C++ for AIX Fix Pack 4 (July 2015 PTF) for 13.1
XL C/C++ for AIX Fix Pack 5 (November 2015 PTF) for 13.1
XL C/C++ for AIX Fix Pack 6 (February 2016 PTF) for 13.1
XL C/C++ for AIX Fix Pack 7 (May 2016 PTF) for 13.1
XL C/C++ for AIX Fix Pack 8 (August 2016 PTF) for 13.1
XL C/C++ for AIX Fix Pack 9 (June 2017 PTF) for 13.1
XL C/C++ for AIX Fix Pack 10 (February 2018 PTF) for 13.1
XL C/C++ for AIX Fix Pack 11 (November 2018 PTF) for 13.1
APAR status
Closed as program error.
Error description
An internal compiler error is encountered with a C++ template usage scenario where an inline member template contains an implicit instantiation of another member template. === TEST CASE === struct Dummy { Dummy(char *src) {} }; template <typename Type> class MyClass1 { template <typename T> class InClass1 {}; template<typename T, bool a> class InClass2; template<typename T> class InClass2<T, true> { InClass1<char> t; }; template<typename T1, typename T2> void r() {} }; template <typename Type> class MyClass2 { public: template <typename T1, typename T2> MyClass2& run2(T2& is) { MyClass1<T1> t(&someFunc()); return *this; } MyClass2& run(char* str) { Dummy t(str); return run2<Type>(t); } }; int main() { MyClass2<int> a; a.run("test"); } $ xlC -c apar.cpp xlC: 1501-230 (S) Internal compiler error; please contact your Service Representative. For more information visit: http://www.ibm.com/support/docview.wss?uid=swg21110810 $ (Note: Test case demonstrates internal compiler error only - it contains a source error because no definition for 'someFunc()' exists)
Local fix
Problem summary
PROBLEM DESCRIPTION: Compiler logic to traverse and process member templates of another template was out-of-sync when encountering the implicit instantiation declaration. USERS AFFECTED: Users with code containing a member template defined inline and containing an implicit instantiation of another member template.
Problem conclusion
The problem has been fixed.
Temporary fix
Comments
APAR Information
APAR number
IV75539
Reported component name
XL C/C++ FOR AI
Reported component ID
5725C7200
Reported release
D10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2015-07-28
Closed date
2015-07-28
Last modified date
2015-07-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 AI
Fixed component ID
5725C7200
Applicable component levels
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSGH3R","label":"XL C\/C++ for AIX"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"13.1","Edition":"","Line of Business":{"code":"LOB73","label":"Power TPS"}}]
Document Information
Modified date:
19 August 2024