IBM Support

PM94092: Code error on having nested template classes

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Description
    ----------
    Nested template class in template class generates syntactical
    wrong code. Please find a sample model attached where the
    behavior is observed using Rhapsody 8.0.3.
    
    In the attached model (Model803.zip) you will find a template
    class 'OuterC' with a nested template class 'InnerC'.
    
    The generated code does not compile because of wrong C++ syntax
    of the constructor/destructor of the inner class 'InnerC'.
    
    
    Modeling of inner template classes in template classes is not
    possible because of the reported error.
    

Local fix

Problem summary

  • Code error on having nested template classes
    

Problem conclusion

  • There are 2 parts for this APAR:
    1. The operations of a template that is nested inside another
    element should be in declaration - this is fixed.
    2. Using an inner template class, outside of the owner class. -
    This looks like a bad modelling - as it breaks encapsulation. It
    seems like The proper thing to do here, is pull the inner
    template to reside the outer class. in any case - Rhapsody does
    not supports this - there is no option to choose the 'inner'
    template parameter. If customer insists this is what he wants -
    please open an RFE.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM94092

  • Reported component name

    TLOGIC RHAPSODY

  • Reported component ID

    5724V74RP

  • Reported release

    802

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-07-30

  • Closed date

    2013-12-12

  • Last modified date

    2013-12-12

  • 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

    TLOGIC RHAPSODY

  • Fixed component ID

    5724V74RP

Applicable component levels

  • R805 PSY

       UP



Document information

More support for: Rational Rhapsody

Software version: 8.0.2

Reference #: PM94092

Modified date: 12 December 2013