IBM Support

LI77821: COMPILE TIME ERROR WITH -QWARN64

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • When compiling with -qwarn64, the compiler issues an error
    message. -qwarn64 should not issue an error messsage. It should
    issue a warning message instead.
    
    ===== COMPILE COMMAND:
    xlC_r -qnolm -qeh=v6 -q64 -qwarn64 -qrtti=all -g
    -qcheck=nobounds:div:null -I. -c -o Object.o Object.cpp
    
    ===== TESTCASE:
    $ cat Object.cpp
    
    #include <iostream>
    #include "Object.h"
    
    
    using namespace std;
    
    
    template<>
    bool CORBA::is_nil<>(char *ptr)
    {
      if (ptr == 0){
         cout <<" Pointer is  null "<< endl;
         return true;
       }
    
    
      cout <<" pointer is NOT null "<< endl;
      return false;
    }
    $
    
    $ cat Object.h
    
    #include <iostream>
    
    
    namespace CORBA
    {
      template<class T>
      bool is_nil(T *t);
    
    
      template<> bool is_nil <> (char *p);
    }
    $
    
    ===== ACTUAL OUTPUT:
    
    $ xlC_r -qnolm -qeh=v6 -q64 -qwarn64 -qrtti=all -g
    -qcheck=nobounds:div:null -I. -c -o Object.o Object.cpp
    "Object.cpp", line 7.6: 1540-1621 (S) The explicit
    specialization "is_nil<char>" must be declared in the nearest
    enclosing namespace scope of the template.
    $
    ===== EXPECTED OUTPUT:
    Should not be an error message.
    

Local fix

  • N/A
    

Problem summary

  • USERS AFFECTED:
    Users using -qwarn64 option are affected by this issue.
    
    PROBLEM DESCRIPTION:
    Compiler generates error message when -qwarn64 is used; instead
    of a warning message.
    

Problem conclusion

  • The compiler has been fixed so that a warning message is
    emitted instead of error message when using -qwarn64 option for
    the associated test case.
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI77821

  • 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

    2014-02-26

  • Closed date

    2014-02-26

  • Last modified date

    2014-02-26

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

    IV54663

  • 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 PSY

       UP



Document information

More support for: XL C/C++ for Linux
Compiler

Software version: 12.1

Reference #: LI77821

Modified date: 26 February 2014