Fixes are available
November 2009 PTF for XL C/C++ for AIX, V10.1
November 2009 Runtime for IBM XL C++ for AIX, V10.1
April 2010 XL C/C++ Enterprise Edition V8.0 for AIX PTF
October 2010 PTF for XL C/C++ for AIX, V10.1
October 2010 PTF for XL Fortran Runtime for AIX, V12.1
June 2011 XL C Enterprise Edition V8.0 for AIX PTF
June 2011 XL C/C++ Enterprise Edition V8.0 for AIX PTF
June 2011 XL Fortran Enterprise Edition V10.1 for AIX RTE
May 2012 PTF for XL C/C++ for AIX, V10.1
September 2012 PTF for XL Fortran for AIX, V12.1
September 2012 PTF for XL Fortran Runtime for AIX, V12.1
January 2013 PTF for XL C/C++ for AIX, V10.1
XL C/C++ for AIX Fix Pack 18 (July 2013 PTF) for 10.1
XL C/C++ for AIX Fix Pack 19 (October 2013 PTF) for 10.1
XL C/C++ for AIX Fix Pack 21 (October 2015 PTF) for 10.1
October 2010 PTF for XL Fortran for AIX, V12.1
February 2011 PTF for XL Fortran Runtime for AIX, V12.1
November 2009 PTF for XL Fortran for AIX, V12.1
November 2009 PTF for XL Fortran Runtime for AIX, V12.1
January 2010 PTF for XL Fortran Enterprise Edition for AIX, V11.1
March 2010 PTF for XL C/C++ for AIX, V10.1
March 2010 PTF for XL Fortran for AIX, V12.1
March 2010 PTF for XL Fortran Runtime for AIX, V12.1
April 2010 XL C Enterprise Edition V8.0 for AIX PTF
April 2010 PTF for XL C/C++ for AIX, V10.1
April 2010 PTF for XL Fortran for AIX, V12.1
April 2010 PTF for XL Fortran Runtime for AIX, V12.1
May 2010 PTF for XL Fortran Enterprise Edition for AIX, V11.1
June 2010 PTF for XL Fortran for AIX, V12.1
June 2010 PTF for XL C/C++ for AIX, V10.1
October 2010 XL Fortran Enterprise Edition V10.1 for AIX PTF
October 2010 XL Fortran Enterprise Edition V10.1 for AIX RTE
November 2010 PTF for XL Fortran Enterprise Edition for AIX, V11.1
February 2011 PTF for XL Fortran for AIX, V12.1
March 2011 PTF for XL Fortran Enterprise Edition for AIX, V11.1
May 2011 PTF for XL Fortran for AIX, V12.1
May 2011 PTF for XL Fortran Runtime for AIX, V12.1
May 2011 PTF for XL C/C++ for AIX, V10.1
June 2011 XL Fortran Enterprise Edition V10.1 for AIX PTF
July 2011 PTF for XL Fortran Enterprise Edition for AIX, V11.1
July 2011 PTF for XL Fortran for AIX, V12.1
July 2011 PTF for XL Fortran Runtime for AIX, V12.1
October 2011 PTF for XL C/C++ for AIX, V10.1
October 2011 PTF for XL Fortran for AIX, V12.1
October 2011 PTF for XL Fortran Runtime for AIX, V12.1
December 2011 PTF for XL Fortran Enterprise Edition for AIX, V11.1
February 2012 PTF for XL C/C++ for AIX, V10.1
February 2012 PTF for XL Fortran for AIX, V12.1
February 2012 PTF for XL Fortran Runtime for AIX, V12.1
September 2012 PTF for XL C/C++ for AIX, V10.1
January 2013 PTF for XL Fortran for AIX, V12.1
January 2013 PTF for XL Fortran Runtime for AIX, V12.1
XL Fortran for AIX Fix Pack 18 (July 2013) for 12.1
XL Fortran Runtime for AIX Fix Pack 18 (July 2013 PTF) for 12.1
XL Fortran for AIX Fix Pack 19 (October 2013) for 12.1
XL Fortran Runtime for AIX Fix Pack 19 (October 2013 PTF) for 12.1
XL C/C++ for AIX Fix Pack 20 (October 2014 PTF) for 10.1
XL Fortran for AIX Fix Pack 20 (October 2014 PTF) for 12.1
XL Fortran Runtime for AIX Fix Pack 20 (October 2014 PTF) for 12.1
APAR status
Closed as program error.
Error description
The header file omp.h in fileset xlsmp.rte contains the following enum: typedef enum omp_sched { omp_sched_unknown= 0,/* not a valid type */ /* following 4 schedule kinds are defined in Open 3.0 Specification */ omp_sched_static= 1,/* GUIDED scheduling type */ omp_sched_dynamic= 2,/* DYNAMIC scheduling type */ omp_sched_guided= 3,/* STATIC scheduling type */ omp_sched_auto= 4,/* AUTO scheduling type */ ibm_sched_affinity= 1000,/* AFFINITY scheduling type. This is an IBM extension. */ } omp_sched_t; The comma at the end of the ibm_sched_affinity element does not conform with the stdc89 language level, and will produce an error for users compiling with -qlanglvl=stdc89.
Local fix
- Manually delete the comma from omp.h - Compile with a later language level (i.e. -qlanglvl=stdc99)
Problem summary
PROBLEM DESCRIPTION: The XLSMP runtime V1.8.0.0 introduced new content into the omp.h header file contained in /usr/include/. This new version of omp.h contains the following enum: typedef enum omp_sched { omp_sched_unknown= 0,/* not a valid type */ /* following 4 schedule kinds are defined in Open 3.0 Specification */ omp_sched_static= 1,/* GUIDED scheduling type */ omp_sched_dynamic= 2,/* DYNAMIC scheduling type */ omp_sched_guided= 3,/* STATIC scheduling type */ omp_sched_auto= 4,/* AUTO scheduling type */ ibm_sched_affinity= 1000,/* AFFINITY scheduling type. This is an IBM extension. */ } omp_sched_t; For some time, AIX headers, such as omp.h, followed the c89 standard. Newer versions of AIX no longer completely follow the c89 standard, and have introduced commas at the end of the lists in enum types. Users compiling with the c89 standard will experience a syntax error caused by this comma: ''/usr/include/omp.h'', line 50.27: 1506-275 (S) Unexpected text ',' encountered.
Problem conclusion
Removed the last comma in the enum in omp.h .
Temporary fix
Comments
APAR Information
APAR number
IZ57589
Reported component name
XLC C++ AIX
Reported component ID
5724M1200
Reported release
180
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2009-08-07
Closed date
2009-11-16
Last modified date
2009-11-16
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 SMP AIX
Fixed component ID
5724U8201
Applicable component levels
Document Information
Modified date:
24 February 2022