Patch 200003312-7 - Rational Apex NT 3.0.2b for Windows NT ---------------------------------------------------------- To install this patch, run the command: apex_nt_patch_200003312-7.exe Description This README file for Rational Apex Ada 95/83 for Windows NT, provides information on the following : a. Patch Release 6 for 3.0.2b (this includes bug fixes made for all previous patch releases) b. Patch Release 5 for 3.0.2b c. Patch Release 4 for 3.0.2b d. Patch Release 3 for 3.0.2b e. Release 3.0.2b (this is in addition to the information present in the normal documentation and release notes) PATCH RELEASE 6 FOR 3.0.2b -------------------------- Bug Fixes --------- 1. Defect PEBU00006392 - Apex Ada NT Compilation operations destroy file being edited. Compilation operations such as pretty_print, analyze, code and link from the Compile menu sometimes caused a dialog box to appear which erroneosuly declared that the file has been deleted. Subsequent operations could destroy the source file. This problem has been fixed. PATCH RELEASE 5 FOR 3.0.2b -------------------------- Bug Fixes --------- 1. Defect PEBU00003541 - Apex NT debugger does not display correct attribute values This problem has been fixed. 2. Defect PEBU00005310 - interrupting after continuing an attached debugger gets seg fault This problem has been fixed. 3. Defect PEBU00005355 - a_db -v, screen-mode, in DOS shell with large buffer and vertical scrollbar In the 3.0.2b release, the command line debugger when run in "visual" mode does not work correctly. This problem has been fixed. Other Bug Fixes --------------- 1. No defect number - Apex NT 3.0.2b, variant record as out parameter problem. In the 3.0.2b release, the debugger could not display variant records correctly. This has been fixed. 2. No defect number - set_switch fails silently when Policy/Switches is readonly. This problem has been fixed. 3. No defect number - Check in/out files button on the Imports browser bring up the wrong files when used the second time. This problem has been fixed. 4. No defect number - Imports/remodel also need uncheckout files button. Undo Check Out Import files... button in the Imports Browser, Undo Check Out Export Set... button in the Exports browser and Undo Check Out Artifact Files... button in the Remodel dialog have been added. 5. No defect number - line numbers for apex visit +line:col.highlight_length The apex visit command can now take an additional parameter specifying which line and column to position the cursor on and how many columns to highlight. One such parameter can be specified for each file to be visited. If the parameter is omitted, the cursor is not repositioned if the file is already open. The cursor is positioned on line 1, column 1 if the file is not already open. The additional parameter has the form +line:col.highlight_length, where either of col or highlight_length can be omitted. The default value for col is 1 and the default value for highlight_length is to highlight until the end of the line. 6. No defect number - Apex clearcase integration does not work correctly with Clear Case version 4.0. In the 3.0.2b release, options in the File:New menu - New Ada, New Directory, New Export Set, New Rational Subsystem and File:Delete Object were not working correctly when the "Make it Controlled" checkbox was checked. This problem has been fixed. 7. No defect number - Apex NT, Rose integration does not work correctly with new rational subsystems with .rss suffix. This problem has been fixed. PATCH RELEASE 4 FOR 3.0.2b -------------------------- Bug Fixes --------- 1. Defect 149995 - Apex NT GUI/adaoe, Ada Preprocessor on *.app, Compile:Code greyed out. In the 3.0.2b release, the .app files could not be parsed, analyzed, coded or linked as the options were greyed. This problem has been fixed. 2. Defect 150219 - apex code - closure linked does not work. Compile:Analyze and Compile:Code do not do the "closure analysis" correctly. In the 3.0.2b release, when the user requested "link closure" or "coding closure" on Compile:Analyze he/she was able to get only "analyze" closure, and no reassurance that the entire program will code or link. Similarly when the user requested "link closure" on Compile:Code he/she got only coding closure. To analyze the entire program the user had to link it. This problem has been fixed. 3. Defect 150243 - Apex Ada NT 3.0.2b Ada preprocessor is unusable. This problem has been fixed. 4. Defect 150247 - Apex NT Pretty Print causes "File has been deleted by another process". In the 3.0.2b release, Compile:Pretty Print resulted in an alert box with the message: "File has been deleted by an external process". This problem has been fixed. 5. Defect 150273 - Apex Ada NT "Stop build" does not stop RCI builds. This problem has been fixed. Stop build now kills all processes spawned as part of the build. Note: Stop build will not kill any processes that are started in the background. That is, it will not kill processes that no longer have a parent process. Also, stop build will not directly kill processes started on remote machines from RCI scripts. These processes should be written in such a way that they die when the corresponding process on the local machine dies. This can be done if the remote process dies when it detects that the connection to the local machine is broken. Other Bug Fixes --------------- 1. No defect number - control with "keep it checked out" option does not keep object checked out. In the 3.0.2b release, while using the Apex Ada pulldown menu item to check in or make an object controlled and "keep it checked out", the operation did not take effect (that is, the user had to check out the object again). This problem has been fixed. 2. No defect number - Help:About does not give information about patch release. This problem has been fixed. Help:About displays the patch release number. Additional Features ------------------- The following additions have been made: a. Control Menu Note: These buttons are enabled if you select the Rational Subsystem Structure for ClearCase option in the Control:Apex Subsystem Version Control Model menu. 1. Show Imports The following buttons have been added in this browser: Check In Import files... Check Out Import files... 2. Show Exports The following buttons have been added in this browser: Check In Export files... Check Out Export files... 3. Remodel... The following buttons have been added in this dialog: Check In Artifact Files... Check Out Artifact Files... PATCH RELEASE 3 FOR 3.0.2b -------------------------- Bug Fixes --------- 1. Debugger crash, out of virtual memory In the 3.0.2b release, an internal tmp file was growing very fast while debugging. This could sometimes lead to virtual memory being exhausted. This problem has been fixed. 2. Defect 147490 - Pragma import(stdcall, ...) incorrectly calculates parameter sizes @ In the 3.0.2b release, pragma import (stdcall, ...), was calculating parameter sizes incorrectly. This problem has been fixed. 3. Defect 149252(UNIX), 149711(NT) - Unexpected type class FORMAL_PRIVATE_CLASS (Ada 83) In the 3.0.2b release, the compiler sometimes gave an invalid error message "raised Unexpected type class FORMAL_PRIVATE_CLASS" while compiling certain files. This problem has been fixed. Additional Feature ------------------ An additional check box - Synchronize with Target, has been provided in the Debug dialog. This is enabled when debugging cross executables. RELEASE 3.0.2b -------------- The main features of this release, as explained in the Release Notes are: - ClearCase Integration (See ClearCase Integration document) - RCI Modifications/Limitations of this Release ----------------------------------------- The following list specifies the modifications/limitations of this release in addition to the ones mentioned in the Release Notes. a. GetTempPath function b. Changes related to DLL building c. Choosing the Apex Subsystem style d. Note for Rose Ada and Reverse Engineering tool users e. Rose Ada add-in f. RCI customization - Limitations and Known Differences g. Apex Lite versus Apex Full h. Bug fixes i. Known Bugs and Limitations j. Modifications in Documentation GetTempPath function -------------------- Apex NT now uses the GetTempPath system call to determine which temp directory to use. The GetTempPath function does not verify that the directory specified by the TMP or TEMP environment variables exists. The function gets the temporary file path as follows: 1. The path specified by the TMP environment variable. 2. The path specified by the TEMP environment variable, if TMP is not defined. 3. The Windows directory, if both TMP and TEMP are not defined. Changes related to DLL building ------------------------------- The function adafinal now does not exit from the user program but returns control to the calling procedure. Choosing the Apex Subsystem style --------------------------------- To support ClearCase integration, the structure of Rational Subsystems has been modified. Traditional Subsystem/Views (also known as Summit-style subsystems) are still supported. The menu item Control:Apex Subsystem/Version Control Model can be used to select the mode in which Apex NT should operate - the traditional Summit-style or the new style for ClearCase. The new subsystem structures are not restricted to use only with ClearCase. In many cases, new Apex NT users may find them easier to get started with, because the structures are less complex. Note for Rose Ada and Reverse Engineering tool users ----------------------------------------------------- To ensure proper operation of reverse-engineering, create paths (except for the drive letter) for subsystems with Ada code to be reverse-engineered, in lower case. The drive letter should be in upper case. In create dialogs, if the drive letter appears in lower case, change it to upper case before selecting okay. Reverse-engineering does not currently support the new-style Rational Subsystems. A patch to reverse-engineering will be supplied on the Rational ftp site to correct this. If you wish to be notified when the patch is available, please join the apex_nt_forum mailing list or the apex_announcements list. You can subscribe to either list at the Rational website at: http://www.rational.com/products/apex/usergroups/index.jtmpl Rose Ada add-in --------------- If you have purchased Apex Ada Full (as opposed to Apex Ada Lite), the Rose Ada add-in is included on the CD. The Ada add-in can be applied to any version of Rose 98 or Rose 98i (on Windows only). RCI customization - Limitations and Known Differences ----------------------------------------------------- Limitations ----------- 1. For some commands, Apex NT RCI integration calls the scripts in the keys directory with parameters that are different from Apex UNIX. For details, refer to GNU customization in $APEX_BASE/ada/key.ss/rci_nt_x86_gnat.ada95.3.0.3.rel. 2. The apex properties command does not accept +output* options. 3. If -output_to_gui is present, it should be passed to rada. Known Differences ----------------- 1. analyze [-output_to_gui] full_path_name_of_unit ... 2. clean [-output_to_gui] context clean_goal full_path_name_of_unit... 3. code [-output_to_gui] full_path_name_of_unit... 4. link [-output_to_gui] full_path_name_of_unit... 5. migrate [-output_to_gui] [-into target_dir_name] full_path_name_of_unit... 6. parse [-output_to_gui] full_path_name_of_unit... 7. pretty_print [-output_to_gui] full_path_name_of_unit... 8. rada_clean [-output_to_gui] [context [-clean_goal {Archived|...}] ] clean_target Not Supported ------------- 1. apex check_rules 2. Apex_Ada_Show_Compile_Errors Apex Lite versus Apex Full -------------------------- The installation process no longer differentiates between Apex Lite and Apex Full. The differences between Full and Lite are managed through licensing. During installation, shortcuts for both Full and Lite are present in the Rational Apex Ada program folder. If you attempt to run Apex Ada Full with only the Apex Ada Lite license features, Apex NT will end with a licensing error on startup. Bug fixes --------- a. Improper names for subprograms. Stdcall convention routines now properly generate the expected name for float parameter routines. b. Defect 146247 - Corrupted text files. Apex NT pretty printer, by default, inserts DOS style line terminators. The CodeWright flag must not be changed to the UNIX style for ada files. This can lead to mixed line terminators in a file since the tools - pretty_printer, create_ada, create_body etc. will continue to insert DOS style line terminators. Existing files with UNIX style line terminators should be processed by the user to convert them to DOS style to prevent mixed terminators. Known Bugs and Limitations -------------------------- a. make_separate command This command causes a UNIX style line terminator in the parent body after the is separate clause. b. Reload suppress problem Version Control operations in ClearCases dynamic view generates the Reload message box even if the file content is not modified. Suppressing this with Suppress reload prompt checkbox in Tools:Environment can lead to Access violation by AdaOe. c. Show Imports panel Show Imports panel now displays Rational Subsystem in the subsystem column. In this case, View column displays .. If the imports of a view are in an inconsistent state, then Show Imports of a view may not synchronize with imports in Imports/Description.cfg. In this case if the inconsistency is due to mismatch in the Compiler_Key switch, then you must delete all the views that do not belong to the same group together. This will restore the state of Show Imports to be in sync with imports in Imports/Description.cfg. d. Microsoft Internet Explorer To display on-line help or documentation in Apex NT, you need to have Microsoft Internet Explorer (v4.0 or later) installed on your machine. e. Machine configuration for better performance For better performance, the machine should have 100 MB main memory with 200 MB swap space and a minimum of 200 MHz CPU. Modifications in Documentation ------------------------------ Command Reference ----------------- The following information needs to be added in the Command Reference: 1. Summit/CM is not provided in Apex Lite Ada 95/83 for Windows NT. Summit/CM commands are available in Apex NT Full through Shadowing. Refer to the Client/Server Concepts Guide for more details. 2. Apex NT full provides version control operations through "Shadowing". Shadowing uses a Summit/CM server running on Unix to provide version control operations for Apex NT. Refer to the Client/Server Concepts Guide for details. Apex NT Lite does not support version control operations. 3. Release views are not currently available in Apex Ada 95/83 for Windows. 4. Interface views are not currently available in Apex Ada 95/83 for Windows NT. 5. copy_view On Apex NT Full, the new views created by this operation will not have any controlled files. The new views may be shadowed and files within it controlled using the shadow_view and check_in -control commands. Refer to the Client/Server Concepts Guide for a description of how to do this. 6. The following commands are available only when Shadowing is enabled/installed on Apex NT. Shadowing is described in the Client/Server Concepts Guide: - check_in - check_out - abandon - control - uncontrol - accept_changes - accept_latest - set_version - set_history - migrate_history - show_histories - show_status - difference - show_versions - note Ada Runtime Guide ----------------- The following information needs to be added in the Ada Runtime Guide under Memory Management: Note: References to V_Usr_Conf and usr_conf.ss subsystem are not applicable for Apex NT.