IBM Support

LI75143: OMP.H HEADER FILE ISSUE WITH STDC89

Subscribe

You can track all active APARs for this component.

 

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

    LI75143

  • Reported component name

    XL C/C++ SLES10

  • Reported component ID

    5724U8300

  • Reported release

    A10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-12-01

  • Closed date

    2009-12-01

  • Last modified date

    2009-12-01

  • APAR is sysrouted FROM one or more of the following:

    IZ57589

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    XL C/C++ SLES10

  • Fixed component ID

    5724U8300

Applicable component levels

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSJT9L","label":"XL C\/C++"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"A.1","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]

Document Information

Modified date:
14 October 2021