IBM Support

PI33035: UseDirectReactiveDeletion property defect breaks RiCReactive Vtbl backwards-compatibility for users of external frameworks

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

APAR status

  • Closed as program error.

Error description

  • This is related to defect -
    http://www-01.ibm.com/support/docview.wss?uid=swg1PM33954
    'Generated code appears to be using old format from
    RiCReactive_Vtbl' - before this fix the virtual table was
    generated with only 7 (instead of 9) attributes when the
    UseDirectReactiveDeletion property was set to true. The OXF
    requires 9 attributes.
    
    However, the user is using a modified version of the IDF and
    have been using this property defect in 7.1 to revert to the
    previous version of the RiCReactive virtual table for backward
    compatibility. During their plan to upgrade to 8.x they have
    discovered this fix will increase the size of their binary,
    making an upgrade very difficult.
    
    Therefore, they require a backwards compatibility property -
    separate from UseDirectReactiveDeletion - to revert the virtual
    table code generation back to only 7 attributes.
    
    STEPS TO REPRODUCE
    
    The before and after behavior can be seen in 7.6.1.4 (before the
    fix) and in 8.0 (after the fix) with a simple class+statechart
    combination and examining the .c source file Note the language
    is C.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    For users of external frameworks, problem with the
    UseDirectReactiveDeletion property breaks the backward
    compatibility of RiCReactive Vtbl.
    

Problem conclusion

  • In version 8.1.2.1, a new property,
    C_CG::Framework::UsePreviousOxfReactiveVtblStruct, has been
    added with a default value of False. If you set the value of
    this property to True (and the property
    UseDirectReactiveDeletion is set to True), the code will be
    generated without the extra two fields. Note that the value
    of UsePreviousOxfReactiveVtblStruct should be set at the
    Configuration level.
    Note also that if you set this property to True and use the
    OXF framework provided with the Rhapsody installation, you
    may see warnings in some tools/compilers that require
    initialization of all struct members.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI33035

  • Reported component name

    TLOGIC RHAPSODY

  • Reported component ID

    5724V74RP

  • Reported release

    812

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2015-01-20

  • Closed date

    2015-02-24

  • Last modified date

    2015-02-24

  • 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

  • R812 PSN

       UP



Document information

More support for: Rational Rhapsody

Software version: 8.1.2

Reference #: PI33035

Modified date: 24 February 2015