5.2.1 Developer Known Problems

5.2.1 Developer Known Problems
Date: 99/02/02
 
Fr No Title External Description
3415 Search Engine appears to hang when match not found (should be a message) On some unsuccessful searches, the on-line search engine does not always update its progress indicator, which appears to be stuck at 98%. Hitting reload or just starting a new search will clear this problem.

3053 Include paths in package configs are ignored when compiling top-level actor Compiling a top-level actor contained within a package will fail if the actor contains an inclusion (stereotype of 'interface') where the include path is specified in that package.

There are two workarounds for this problem:
1) Change the stereotype of the inclusion to 'implementation' instead of 'interface'
2) Move the include path to the update-level

2878 A non-default MS Visual Source Safe Database cannot be used as a library Currently, with MS VSS only the default database can be used as an ObjecTime library.

There is a script available that can be used for a workaround. Please contact ObjecTime Support.


 
 

5.2.1 Developer Known Problems
Date: 99/02/02
 
Fr No Title External Description
2673 Can't find include files if Inclusion Directory contains spaces On Windows NT, if an Inclusion Path contains a space, or contains an environment variable whose evaluation contains a space, dependency generation and/or compilation will fail.

Assuming one of your inclusion paths is "C:\Program Files", you may get an error such as:

"Command line warning D4024 : unrecognized source file type 'Files', object file assumed

Command line warning D4027 : source file 'Files' ignored"

Even if you have enclosed the embedded spaces in the inclusion path, the quotes are stripped away before the arguments reach the compiler.

One workaround is to place the include files in a directory that does not have a space in the name and then update INCLUDE accordingly. Another workaround is to specify the directory in INCLUDE using the 8.3 notation (MS-DOS name). 8.3 notation for a directory can be via the Properties of the directory in Explorer.

Another workaround is to use an environment variable specially supported by the compiler (ie. Visual C++ looks up %INCLUDE% itself).


2521 Possibility of session left up and interactive after batch mode abort In some situations when an abort occurs during batch mode, the toolset can display the "Unrecoverable System Error" dialog (normal dialog for aborts) and also respond to normal toolset input. In these situations, you should not continue using the executing session other than to respond to the "Unrecoverable System Error" dialog, which will save and/or exit accordingly.

2520 Extended State Variables in a substate of RPL actor are deleted on decompose Extended State Variables (ESVs) defined in a substate of an RPL actor are deleted if a decompose of the substate is performed.

 
 

5.2.1 Developer Known Problems
Date: 99/02/02
 
Fr No Title External Description
2519 Sync with library requires explicit deselection of class to sync status In a situation where the update indicates a class is checked out, but the class in the library system is not actually checked out, the normal procedure is to perform a "sync with library" from the update menu, specifying the "summarize checked out versions" option. In the displayed list, the class is still listed in the dialog showing "checked out classes", but it should not be. Acknowledging the dialog to proceed with the syncronize does not synchronize the status of the class.

The workaround is to deselect the class in the summary list dialog.

 
 

5.2.1 Developer Known Problems
Date: 99/02/02
 
Fr No Title External Description
2514 Compilation packages may have non compilation child packages Child packages can have a different compilation/non-compilation attribute from their parent. This is incorrectly handled by the Makefile generator.

For example, if Package2 is a compilation package, and a child of Package1 (a non-compilation package), you may encounter an error in the Error Browser such as:

"System command [nmake -f Makefile COMPILE.NOW ] returned error [2]"

In the Compilation Details, or by rerunning the command at a command prompt, you can get the following error message typically issued to the STDERR stream:

"NMAKE : fatal error U1073: don't know how to make 'LF/Package1.package'
Stop."

(If Package1 was formerly a compilation package, this symptom will only appear when you do a rebuild.)

In the opposite case, if Package2 is non-compilation, but Package1 is compilation, then classes in Package2 are incorrectly compiled without Package1's compilation environment. In such a case, behavior depends on the compilation environment.

In both cases, the work-around is to make both parent and child packages' compilation attribute the same: both compilation or both non-compilation packages.

This is not known to be an issue when using Clearmake as your Make Type.


 
 

5.2.1 Developer Known Problems
Date: 99/02/02
 
Fr No Title External Description
2512 Primitive error reporting when a class is in 2 compilation packages A class should not be in two compilation packages in the same update. If there is a class in more than one package, then the following may be observed.

When the active Make Type is Clearmake, an unparsed error similar to the following is displayed:

"Parsing aborted. Please examine the raw compiler error stream below for your problem. update '<update name>'
Error: class [name] found in 2 Compilation Packages [Package1],[Package2]
ERROR in generate.pl: System command [perl <OBJECTIME_HOME>/codegen/project_scan.pl
<path to library>/<update name>.project -bfl -o project] returned error [1]"

This error message should be properly fed back into the toolset error browser, but it currently is not.

In non-Clearmake mode (when the active Make Type is something other than Clearmake), this error condition is not caught at all. The class is compiled as if it belonged to one of the compilation packages (dependent on the make implementation).


 
 

5.2.1 Developer Known Problems
Date: 99/02/02
 
Fr No Title External Description
2510 Inclusion path from transitive package environment not used during compilation When one package has a dependency on a second package and that second package has a compilation environment specifying inclusion paths and external include files, the paths are not used during compilation of the first package.

There are a few workarounds. From most preferable to least preferable:
1) Copy the include paths from the configuration environment of the package where they are specified to the package that was being compiled when the compile error occurred.
2) Make the packages involved child packages of a parent that contains appropriate include paths.
3) Copy the include paths from the environment of the package where they are specified to the the update configuration.

As a longer term solution, moving the include files files from the package configuration to actor and/or data class inclusions (preferable implementation) will result in less occurrences of the problem.

2509 Some code generation parse errors go to STDERR When compiling in the toolset using Clearcase/Clearmake mode, some code generation and makefile generation parse errors may get directed to stderr instead of the compile.output files, in which case, the errors are not properly reported to the toolset. Examples of errors seen in the toolset are:

In the Error Browser, there will be indication of:
"error: System command [clearmake -f T:\/codegen/clearcase_root.mk" and a project or class file.

In the Compilation Details (of the Error Browser), there will be indication of a parse error on some line of a project or class file.

In both cases, there are some error details that are not in the browser or details, but instead were redirected to stderr and are lost.


 
 

5.2.1 Developer Known Problems
Date: 99/02/02
 
Fr No Title External Description
2508 Unnecessary compilation on binding rename When a binding label for a binding is changed, the actor is regenerated and unnecessarily recompiled. (Other dependent classes may be regenerated as well, but build-avoidance in the code-generator will prevent them from being recompiled.)

This problem is independent of which Make Type you are using (Clearmake or non-Clearmake), and of which RTS (C,C++,Simulation) you are using.

2507 Compile progress text lag by one step when using ClearMake with parallel jobs The output to display for the compilation progress in the toolset can be delayed (lag) by one step when using ClearMake with parallel jobs because stderr and stdout for any one job are buffered until the job is complete.