© Copyright International Business Machines Corporation 2011. All rights reserved. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
Rule M8.3 is incorrectly reported when a function has a pointer to function as parameter. The match between declaration and definition of the function fails and CRCcc reports rule 8.3 violation.
No known workaround .
Rule M8.12 ("When a global array variable can be used from multiple files, its size should be defined at initialization time") is sometimes displayed on a non array object.
No known workaround .
When:
- the same enumerated constant id is used to define multiple enumerated types, and
- if an array is indexed by one of these types,
then, using named aggregate for initializing or testing this array produces a mistake on the static evaluation of the enum'pos.
The workaround is to use unnamed aggregates.
The stub call result is not displayed into the test report when STUB call is set to 0 in the TEST. Nevertheless, the unexpected call is reported correctly.
No known workaround .
Multi-lines comments are not shown in the report or badly dispatched in the report.
No known workaround .
The test script compiler raises an internal error in Module SFC when "init with" value contains a cast with a type having a definition bigger than 8K bytes.
The workaround is to reduce the type definition or remove the cast.
A non compliant prototype of atl_strcpy and atl_strlen functions may lead to compilation error on very strict compilers.
The workaround is to add the missing const on the last parameter in atlimage.c.
The test script generator badly declares the variable used as function parameter in the generated test script when the parameter is a pointer-to-pointer-to-basic_type.
The workaround is to modify the generated ptu.
The instrumentor inserts ATO_VOID_RETURN macro at the end of non void function when there is no return at this place.
The workaround is to insert a return statement even if this code is not reachable.
The test script compiler is limited in number of INCLUDE STUB instructions and cannot create the temporary files (.tsf and .ots files) when the test script has a large number of INCLUDE simulation (.stb) files.
The workaround is to put multiple stubs in to one file.
When the source extension is not a common extension, the instrumentor assumes it is C code even if in the TDP "Basic setting for C++" section, the key "SRCEXTLIST" contains the right file extension.
The workaround is to modify the Fcts.pl file to change the line $Ini{'LANGUAGE'} = ucfirst(lc($Ini{'LANGUAGE'})); to $Ini{'LANGUAGE'} = uc($Ini{'LANGUAGE'}); There is only one occurence of "ucfirst" in this file.
IBM Test RealTime release notes appear garbled in Microsoft Internet Explorer browser.
The workaround is to use another HTML browser.
Online Help is incomplete about calling a stub before the main program has been correctly initialized, when the stub has a return value. The documentation has been updated in section: Testing software components > Component Testing for Ada > Writing a test script > Stub simulation > Defining stubs.
When memory profiling is active, runtime tracing is not active, and heap size stamp is active, an error is raised when TP.c is compiled.
The workaround is to set the option "Record and display heap size" to "No" in the "Runtime Analysis / Runtime Tracing" project settings.
When a backslash "\" is added at the end of the "Project path" in the RQM test script import dialog, the first character from the IBM Rational Test RealTime project name is truncated.
The workaround is to remove the trailing backslash.
When Ptr->Data is written in the ptu instead of Ptr.Data, the instrumentor fails with "internal error: expr.c, line 3600".
No known workaround .
When a local variable is declared and affected, in compliance with C99 syntax, in the middle of a function, the code is incorrectly instrumented.
The workaround is to declare the local variable at the beginning of the function.
Documentation details, about C/C++ instrumentor configuration files atl.hpp and atus_c.def, are missing. The documentation has been updated in section: Reference > Runtime and static analysis > Command line interface > C and C++ Instrumentor -attolcc1 and attolccp.
When the syntax <object>'access.all or <object>'access.<field> is used, an "Entity not found" error occurs.
No known workaround .
"entity not found" error is due to a wrong overload of the implicit function "/=" when you declare an overload of the function "=" and you change the names of the entry parameters names.
The workaround is to remove the parameters names on the call to "/=" operator.
The Ada instrumentor fails with the "Entity.... not found" error. There is a wrong type 'class resolution when using a generic type parameter.
No known workaround .
Entity is not found due to a wrong resolution type on the code sequence: Type'class(this.all)'access.
No known workaround .
When a label is instrumented and is before a "break" statement in a "switch" construct, it causes an Internal Error when Coverage Conditions are turned on.
No known workaround .
When the C/C++ instrumentor is running on Linux with specific options in option files, an internal error happens.
The workaround is to remove some of diag_error instructions in the Target Deployment Port or run on windows machine.