HCL SW Blogs
Select Page

The latest release of RTist 11, called 2020.22, is now available. Here’s a look at what’s most noteworthy:

Final Modifier Supported

The C++ 11, Final Modifier is now supported by the model compiler. There is a new Final property that can be set on classes and capsules to specify that they cannot be inherited. The same property is also available on operations to specify that they cannot be overridden.

Properties Final

Automatic Variables with Auto Keyword

Another C++ 11 feature is automatic variables declared with the auto keyword. In RTist, you can now create attributes typed by a special auto type that has been added to the CppPrimitiveDatatypes package. You need to specify a default value for the attribute, set its Initializer Kind property to either “equal” or “brace” and make it static const or static constexpr, so that the model compiler will generate an initializer for the corresponding C++ variable. The C++ compiler will deduce the type of the variable from that initializer value.

Auto Type


Fix for Broken References

An important improvement in the 2020.22 release is the better support for working with broken references. In the previous versions, the tool had difficulties coping with certain broken references, and as a remedy it sometimes deleted elements with such references. Now this no longer happens, and instead we have made it easier to fix broken references by means of a new Quick Fix called “Rebind Broken References”. This quick fix can be run from the context menu of a broken reference problem in the Problems view, and it is able to rebind broken references that have been introduced by refactorings, where not all affected references could be updated at the time of the refactoring. A common example is when elements in a model library are moved so they end up in a different model file. This affects all client models that use the library, and since the refactoring of a library typically is done without knowledge of which clients that may use it, many references in client models can become broken because of this. The “Rebind Broken References” quick fix is able to update all such broken references in one go.


TC Editor Enhancements

We have also improved the TC editor in this release. The TC editor’s Code tab now highlights syntax errors which makes it easier to work with transformation configurations textually.

TC Syntax


Finally, let’s mention the graphic visualization of TC relationships that was first available as an experimental feature in the previous release. In this release, we have continued to improve this feature and it now can show both prerequisite and inheritance relationships for TCs (separately or both at the same time). The layout of the graphs has also been improved which is noticeable especially for big graphs. This feature is still experimental, and we hope to complete it in the next release.



Graph Visualization


Comment wrap
Further Reading
RTist header
Secure DevOps | September 2, 2022
RTist 11.2 2022.34
HCL RTist is a rule-based code translator for C/C++. The main feature of RTist is to produce readable, maintainable, and portable code.
What’s new in HCL RTist 11.1 2021.46
Secure DevOps | November 29, 2021
What’s new in HCL RTist 11.1 2021.46
HCL release of HCL RTist: 11.1 2021.46. As usual, there are several new features and a few bug fixes. Read more to know some highlights.
HCL Compass Rest APIs In Action
Secure DevOps | November 9, 2021
Writing a generic type descriptor with HCL RTist
Type descriptor provides Metadata about a user-defined type in the model, such as a class, typedef, or type alias. Read to know more.
Filters result by