IBM Support

LI76589: TEMPLATE ARGUMEMT MISS-MATCH ERROR

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The following test case produces a template argumemt miss-match
    when it shouldn't.
    
    
    ===== Compile Command:
    bgxlC_r -c simple.cpp
    
    
    ===== TESTCASE:
    $cat test.cpp
    
    template<typename T,typename Int=int>
    class Foo;
    
    template<typename T>
    class Foo<T>
    {
    public:
        void Bar() const;
    };
    
    template<typename T>
    void Foo<T>::Bar() const
    {}
    
    int
    main( int argc, char* argv[] )
    {
        Foo<double> foo;
        foo.Bar();
    
        return 0;
    }
    $
    
    
    ===== ACTUAL OUTPUT:
    $bgxlC_r -c test.cpp
    "test.cpp", line 14.6: 1540-0708 (S) The template argument 2
    does not match the corresponding template parameter of "template
    class Foo".
    
    ===== EXPECTED OUTPUT:
    Should compile clean
    

Local fix

  • n/a
    

Problem summary

  • USERS AFFECTED:
    The problem may be seen when a member of a partial
    specialization is defined out-of-line and the specialization
    uses a default template parameter argument.
    
    PROBLEM DESCRIPTION:
    Incorrect name lookup results in bad argument mismatch error.
    

Problem conclusion

  • The compiler has been resolved to take care of the above case.
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI76589

  • Reported component name

    XL C/C++ AE BG/

  • Reported component ID

    5799HJE00

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-01-13

  • Closed date

    2012-03-27

  • Last modified date

    2012-03-27

Fix information

  • Fixed component name

    XL C/C++ AE BG/

  • Fixed component ID

    5799HJE00

Applicable component levels

  • R900 PSY

       UP

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

Document Information

Modified date:
17 October 2021