Question & Answer
Question
Build Errors following upgrade to 6.0 or later with reusable statecharts.
Answer
After upgrading from Rhapsody 5.2 to version 6.0 or later, I now receive one of the following compiler errors caused by the
IS_EVENT_TYPE_OF macro:
error: `getCurrentEvent' undeclared
or
identifier "concept" is undefined - refers to macro
IS_EVENT_TYPE_OF in following code...
This error is a result of upgrading a model which uses reusable statechart implementation and a customized CPP_CG.Microsoft.MakefileContent property. To resolve the problem, edit the MakefileContent property and modify the ConfigurationCPPCompileSwitches assignment from:
ConfigurationCPPCompileSwitches=$OMConfigurationCPPCompileSwitches
to:
ConfigurationCPPCompileSwitches=$OMReusableStatechartSwitches $OMConfigurationCPPCompileSwitches
Additional Information:
$OMReusableStatechartSwitches was added to the MakefileContent property in 6.0 to account for the fact that "#define _OMFLAT_IMPLEMENTATION 1" is no longer generated when using reusable statechart implementation.
$OMReusableStatechartSwitches expands to "-DOM_REUSABLE_STATECHART_IMPLEMENTATION" in the makefile.
The expansion is done via the property _CG:: ::ReusableStatechartSwitches which was added to each environment that Rhapsody
supports out of the box. If your environment settings do not contain this property, then you will need to add it to your custom
site.prp file.
1397 AnswerProduct versionPartner ContentInternal ContentCategoryReference IDAuthor
[{"Product":{"code":"SSB2MU","label":"IBM Engineering Systems Design Rhapsody"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"General Information","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"Version Independent","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]
Historical Number
10369
Product Synonym
Rational Rhapsody
Was this topic helpful?
Document Information
Modified date:
27 May 2022
UID
swg21323671