APAR status
Closed as program error.
Error description
Rhapsody allows Types to be created inside of an Interface class. This Type will then likely be used in one of Interface's operations as a Return Type or an Argument. The problem is that Rhapsody in C code generator places tables at the very top of a .h file, and only then declares Types. Types are referenced in a Vtable before they are declared, resulting in compiler errors. According to the customer, Rhapsody in C should always generate Vtable struct code so that it's at the very bottom of a header file. Please see a small attached Rhapsody model that reproduces the problem. Here's an example of the code generated : typedef struct IDisplay_Vtbl { size_t IDisplay_offset; IDisplay_MyDispIFType* (*IDisplay_Operation_0)(void * const void_me); void (*IDisplay_Operation_1)(void * const void_me); } IDisplay_Vtbl; /*#]*/ /*## package InterfacePkg */ /*## class IDisplay */ typedef struct IDisplay IDisplay; /*## type MyDispIFType */ typedef int IDisplay_MyDispIFType;
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * **************************************************************** * PROBLEM DESCRIPTION: * **************************************************************** * RECOMMENDATION: * **************************************************************** Types declared in Interfaces get declared below a vtable code,
Problem conclusion
Fixed in 7.5.3
Temporary fix
Comments
APAR Information
APAR number
PM23063
Reported component name
TLOGIC RHAPSODY
Reported component ID
5724V74RP
Reported release
752
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2010-09-22
Closed date
2010-12-18
Last modified date
2010-12-18
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
R752 PSN
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS7P9W","label":"Rational Rhapsody"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.5.2","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]
Document Information
Modified date:
18 December 2010