Difference between revisions of "PowerAda: Release Notes"

From OC Systems Wiki!
Jump to: navigation, search
(Replaced content with "<span id="HEADING299"></span><span id="LINK-release.frm-firstpage"></span><span id="HEADING299-0"></span> Release notes for current versions of OCS products are ava...")
(Tag: Replaced)
Line 1: Line 1:
<span id="HEADING299"></span><span id="LINK-release.frm-firstpage"></span><span id="HEADING299-0"></span>
<span id="HEADING299"></span><span id="LINK-release.frm-firstpage"></span><span id="HEADING299-0"></span>
These Release Notes contain information relevant to Version 5.4e of the OCS PowerAda Compilation System, supplementing the PowerAda User's Guide.
Release notes for current versions of OCS products are available at http://docs.ocsystems.com/w/index.php/OCS_Downloads.  Login credentials are required to access downloads, contact [mailto:support@ocsystems.com Contact OC Systems] for assistance.
== 1. Introduction ==
A complete list of available release notes for earlier versions can be obtained via [http://docs.ocsystems.com/w/index.php?search=release+notes&go=Go this search link].
Version 5.5 of the PowerAda Compilation System is a bug-fix update to version 5.4e of the PowerAda development tools from OC Systems. These notes identify the differences between this version and version 5.4e.
== 2. Getting Help ==
If you have any comments, would like additional information, need a different media format, or you have any other installation or configuration problems, please contact OC Systems by internet at [mailto:support@ocsystems.com support -at -ocsystems.com] or by telephone at (703)-359-8160.
== 3. Requirements ==
System Requirements for each of the three PowerAda hosts are: For PowerAda/AIX: any computer running AIX version 4.2 or later (including AIX version 5.3) For PowerAda/Linux: any modern Intel Pentium-based computer running Red Hat Linux 8 or later (with a version 2.4.18 kernel or later) Contact OC Systems for help installing PowerAda on versions or platforms other than these. Typically, 500 Megabytes of disk space are required for installation of PowerAda on any of the host platforms. The file (README) contains more detailed notes on requirements. Please refer to this before installing the PowerAda product on any supported host.
== 4. Licensing ==
PowerAda 5.5 works with the software product FLEXlm. PowerAda 5.5 for AIX does not require a new license if you already have a valid license for PowerAda 4.1 or newer for AIX. PowerAda 5.5 for Linux may require a new license be issued. Contact support@ocsystems.com if you have not received a license key specifically for PowerAda 5.3 (or newer). The license keys for AIX are different from those for Linux, as the products are sold separately. See the PowerAda 5.5 Installation Guide for more information about setting up the license manager.
== 5. Compatibility ==
On both AIX and Linux Linux, PowerAda 5.5 is source-code compatible with PowerAda 5.2, 5.3, and 5.4. But the runtime libraries have been recompiled in each version. Furthermore, the internal data structures inside of a sublibrary changed in version 5.4. A complete recompilation of your source code is recommended, but is not required in all cases. It is not required if you are currently using PowerAda 5.4 or newer, but it is required if you are using an older version. Some source code changes may be required when recompiling programs currently working with PowerAda version 4.3 or earlier. Projects created using earlier versions of PowerAda cannot be opened using PowerAda 5.5. Note that future versions of PowerAda 5 may not support AIX 4. PowerAda 5.5 will continue to be supported as the LegacyAda version of PowerAda for use on AIX 4 operating systems.
== 6. Limitations and Unimplemented Features ==
If you encounter any problem, or have any suggestions for improvement or enhancement, please contact OC Systems at [mailto:support@ocsystems.com support -at- ocsystems.com]. We can't fix what we don't know about. See APPENDIX C, "Implementation Characteristics" (corresponding to Annex M of the Ada95 Reference Manual) for a detailed description of which optional portions of the language have been implemented. PowerAda/Linux does not do any stack overflow checking, and so it will dump core on insufficient stack space rather than raise STORAGE_ERROR. The user should make sure that all task stacks are given sufficient storage to execute.
== 7. Customer-Reported Defects Fixed ==
Below are problems which were found at customer sites and have been fixed in this release. If you have reported a problem and do not see it on this list, please contact OC Systems as described
above to check on the status of your problem.
    446 PA stack frames should be dbx-compatible
    931 Ada shared library elaboration problems
    1205 Setup file not properly constructed during installation
    1208 XCOFF n_type must be 0x20 for Ada subp symbols to avoid "strip -t"
    1228 PA5: port to Fedora Core 5
    1241 Deliver files_in_baseline script
    1255 PA5: xmlpcm0 fails packed comparison
    1260 PA5: runtime tdcallsupb: Csect_Info wrong for new ESV
    1266 PA5: AIX runtime must tolerate TBT+ESV or just ESV, for Aprobe's ESV
    1267 PA5: allow xas.define_symbol for s_class other than 'ua'
    1271 PA5: dbx internal error: assertion failed at line 3519 in file frame.c
    1276 PA5: deliver astub with PowerAda
    1293 PA5: Not all regs saved/restored by exported Ada routine
    1294 PA5: utb hangs on spin-lock using yield()
    1295 PA5: crash in aprojbuild -p
    1301 PA5: simplify/extend shared lib support
    1302 PA5: build & deliver libada_r.a with powerada
    1327 PA5: adbg crash during initialization
    1340 PA5: BT'Class'Output doesn't dispatch to derived type
    1341 PA5: utb_Traceback missing line numbers for soft-linked modules
    1346 PA5: generate, check intersection of two .ail files
=== PowerAda 5.4e ===
    269 PA5: rep. spec'd enum for index causes array '=' failure
    911 PA5 bad unchecked conversion array_element <-> byte
    999 delay until ada.real_time.time_of(49 years) silently fails
    1001 PA5: DDA.Size for an Array_Component should be aligned size
    1028 problems with task entry renaming-as-body
    1036 compiler accepts actual proc name as generic formal
    1058 aprojbuild: bad comporder for 2 units in file
    1063 PA5: library level pragma rejects legal generic child unit name
    1092 aprojbuild: incorrect order for units with pragma inline 
    1095 make aprojbuild work w/o projects
    1096 aprojbuild -U should build instance subunits
    1099 aprojbuild should defer, identify independent units
    1102 PA5: CG crash: bad LF for tagged function call
    1104 implement libq.independent_units function
    1106 PA5: FE rejects legal type extn in spec as 'not in same body'
    1111 Linux pagrep broken on RHEL4
    1118 PA5: aprojbuild: incorrect order for units w/ pragma inline (f/u 1092)
    1119 aprojbuild translates -qinstances=inline to =defer
    1122 PA5: 5.4d regression = fail MP seq sanity check
    1124 bad code in package elab built with opt
    1126 areport outside proj: use adalib.imports if no alib.list
    1127 aprojbuild should only compile pending units from working sublib
    1129 ada -qxlcbind should reference /usr/vacpp/bin/xlC
    1131 PA5: fix regression caused by issue 1104 changes
    1132 PA5: aprojbuild dies w/o warning when command line too long
    1133 subunits vs. independent_units
    1134 aprojbuild should get read-lock to determine update list
    1136 aprojbuild w/o project rejects files outside of current dir
    1137 PA5: generic instance rel incorrectly added to optional body
    1142 PA5: CG INTERNAL ERROR in adn_impl
    1143 PA5: Glink code cannot be added for function: _ptrgl
    1147 PA5: FE can't find generic instance subunit body (f/u to d14557)
    1160 aprojbuild won't recompile obsolete units
    1161 enhance build_shared to limit exported symbols
    1163 create stub generation tool
    1169 Adbgentry crashes on RHEL3 u3
    1172 aprojbuild always forces recompile if -qfloat_overflows
    1176 PA5: patch 5.4d.2 was built w/ wrong system sublib (f/u 1001)
    1178 PA5: Linux should reject/ignore -qfloat_overflows
    1179 PA5: Linux alibmv command-line parsing broken
    1185 PA5: CG crash if expanded array object assigned (f/u 911)
    1186 astub -g shouldn't generate generic unit stubs
    1198 PA5: abuild crashes during bind, while getting Prj.Current_Project
=== PowerAda 5.4d ===
    442 PA5: support cross-language tracebacks
    514 warn if multiple powerada libs in single apc command [PowerAda]
    571 PA5: Build_Overload_Set raise PROGRAM_ERROR if illegal child name
    572 PA5: get_dispatching_spec crash: inc_type'class full type in body
    596 PA5: excessive time to compile code if -qinstances=defer
    603 PA5: Abuild infinitely redo inst subunits if circular dependency
    701 order of ada probes causes 'no debug available'
    741 PA5: Adaentry cores in call_splitter.parameter_creation
    769 PA5 instance subunits ==> 'Lines compiled: 1' (i.641 regression)
    770 PA5: 8th floating point param is passed wrongly
    798 PA5: FE resolve_operator crash in (Float_Constant * Integer)
    801 Linux: handle slightly different /proc/PID/maps file
    802 Linux x86_64: specify -m32 when linking
    803 Linux: adbg doesn't work on diners
    804 Linux: pthread_cond_init overwrites data past MSR
    806 PA5: NO_ATTACHED_MPST in nested child instances [partial fix]
    807 PA5: MP crash if non-static T'Component_Size
    808 PA5: NO_ATTACHED_MPST in re_entity aggregate_eval
    812 AIX abinchk should work on shared object in archive
    813 PA5: Cannot do areport -r supporters -u inst/whatever
    817 AIX: PA-generated toc entries 8-byte aligned, wasting space
    828 PA5: Vsm.Reference_Error IN-OUT discriminated record conversion
    831 PA5: Task discriminants missing in ASIS
    834 PA5: ASIS fails for A_DEFINING_EXPANDED_NAME of child unit
    857 CG crash in make_move on put_line of 'Image
    873 interface-C boolean stack params loaded wrongly
    874 [IN]OUT float params on exported subprogram don't work
    880 PA5: trap handler should handle non-Ada traps differently
    890 PA5: Dynamic dispatch coredumps
    893 PA5 FE traceback instantiating Ifpa_Generic_State_Data_Server
    906 apc chokes on inst of BC hash_table
    913 PA5: public child subprogram cannot see parent's private part
    939 PA5: Generic child name implied within Formal_Package_With_Box
    947 PA5: Float'Machine_Overflows = FALSE, so no divide by 0 exception
    954 pop_stack_and_call_ada doesn't work for shared library
    962 PA5: array init R/W reaches beyond array boundary
    968 Ada.Strings.Bounded implementation yields bad equality test
    971 PA5: cross-dependent instances fail unless -qinstances=defer
    988 AIX: add help function to get app RA,SP from current SP
    994 include universal_traceback in runtime
    995 add symbol info to universal_traceback
    1015 PA5: coding errors in libq:compilation_order
    1017 PA5: abuild should ignore inst/ units
    1022 PA5: Memory leak copying controlled objects
    1025 PA5: Booch stack works wrongly for controlled item type
    1029 incorrect layout of dynamically-sized type [PowerAda]
    1040 universal_traceback (utb) is not thread-safe
    1047 apc NO_BIND_INFO crash reading C++ main Ada modules [PowerAda]
    1054 PA5: RM95 4.6:46 range checks missing in DT conversions
    1057 PA5: Adbggui crash on Browse Unit of C-main 'adn' driver
    1073 PA5: Build_Overload_Set PROGRAM_ERROR if illegal child name (was i.571)
    1074 PA5 instance subunits ==> 'Lines compiled: 1' (was i.769)
    1092 aprojbuild: incorrect order for units with pragma inline
=== PowerAda 5.4b1 ===
    798 - FE resolve_operator crash in (Float_Constant * Integer)
    890 - Dynamic dispatch coredumps
    939 - Generic child name implied within Formal_Package_With_Box
    956 - Update tools to version 5.4b1
=== PowerAda 5.4b ===
    133 - FlexLM: create a new lm_job after queueing license
    472 - Incorporate tag comparison into dispatching equals test
    510 - Exception raised with "ada -P" option (partially deleted src subspace)
    512 - ASIS.Dec.Representation_Value_Image of rep'd enum yields 'Pos not 'Val
    576 - MP crash in tagged type extension aggregate inside of instantiation
    583 - CG Null Access Check in ctenvb.Param_Block_Size
    628 - Can't reinstantiate instance subunit if "ada -P" and no disk file
    641 - FE compiling an instance subunit uses wrong source span (see i.545)
    643 - Pacm.pl checkout doesn't create directories
    644 - FE allows an illegal Qualified_Expr to resolve
    654 - MP crash if pragma INLINE is applied to a renamed Derived_Spec
    661 - MP crash in Acc_Subp_Entity.Object applied to a renamed object
    686 - adbg yields wrong object value if exe was bound with -qxlcbind vs. ld
    694 - apcgen/AdaDI infinite recursion on recursive record type
    746 - ada can't handle +unit names as non-file names
    747 - Update tools to version 5.4b
    749 - 'ada -P' renders ASIS incapable of source text (f15250)
=== PowerAda 5.4a ===
    79 - FE crash: instantiation needs missing template body
    416 - MP crash with generics and -qinstances=defer (booch)
    455 - FE crash in CXB.Open_Subunit when finding spec of body_stub
    459 - PA5: All access to tagged types need finalization
    496 - PA5: -qinstances=defer vs. =inline -- Want different warning msgs
    545 - FE crashes when compiling an instance subunit w/ bad span
    582 - MP crash if UFC call is library level instance actual param
    586 - a2ps.tar is missing
=== PowerAda 5.4 ===
    77 - MP traceback (re_support:is_static_unconstrained) in func return stmt
    165 - CG optimizer omits required overflow constraint check
    181 - CG crash when -O (optimized) subtype of Positive with 0 as low bound
    229 - MP crash w/Component_Size rep. clause on array of 3-bit records
    239 - CG crash when PPC instruction's immediate offset exceeds 16 bits
    352 - ASIS doesn't yield Selected_Name for 'WITH A.B' of child unit
    356 - Executables linked on AIX 5.3 dump core (IBM pthread priority chg)
    385 - FE crashes for concatenation of hidden #& operator
    398 - Tagged type extension overlooks illegal discriminant defaults
=== PowerAda 5.3e ===
    77 - MP traceback (re_support:is_static_unconstrained) in func return stmt
    165 - CG optimizer omits required overflow constraint check
    181 - CG crash when -O (optimized) subtype of Positive with 0 as low bound
    229 - MP crash w/Component_Size rep. clause on array of 3-bit records
    239 - CG crash when PPC instruction's immediate offset exceeds 16 bits
=== PowerAda 5.3d ===
    8709  STND: map implicit spec to body
    9270  ASIS: Acu.Unit_Origin should be more accurate
    14938 ASIS: Is_Part_Of_Instance() wrong for instantiations
    15284 powerada packed bool array handled as not-packed
    15302 ASIS fails to traverse prefix of subprogram/entry call
    15304 ASIS - exception from asis.declarations:corresponding_base_entity
    15351 PA5 crashes on anonymous array subtype w/ DDC
    15361 DDA doesn't work for negative discriminant
    15365 DDA.Extensions.Small_Value fails for Derived type
    23    d15727 PA5: caller xmlvcm1 on PPC uses trashed R3,R4 after call
    26    PA5: debugger traceback querying array, then confusion reins
    31    PA5: debugger crashes Heap memory exhausted. (f/u 15505)
    36    Apcentry: produces bad APC type for Message_Type.
    55    debugger can't select loop parameter bounds (was CMVC d8905)
    56    Make Razor default cm in build_it2
    69    PA 5.3 on AIX makes bad string or I'Image yields STORAGE_ERROR
    97    PA5: Inlined function loses low 3 bits of 11-bit field
    98    d15352 PA5: 2nd call to same inlined proc gave bad result
    100  d12268 PA5: global optimizer bug in short circuit condition
    102  d15649 PA5: Asis.DD.Array_Components fails with derived_type
    103  d15625 PA5: ASIS treats 'RANGE as Simple_Expression_Range
    104  d15624 PA5: Asis.Data_Decomposition.Size was not implemented
    105  d15623 PA5: MP crash if index constraint in DDC has 'RANGE attribute
    117  PA5: MP crash on derived packed array type decln
    118  Add AXI bindings to standard build
    121  exports list created by gen_exp_list should include adainitargs
=== PowerAda 5.3c ===
    15647 minor defects when compiling with -O
    15630 PA/Linux: adbg support for type2 subprogs slow
    15617 crash compiling siu_util_socket_stream.adb with -O
    15612 PA5: type1 entry/exit sequence bad if quad-wrord align applied
    15609 PA/Linux: zero use_count error in cctt opt build
    15602 PA5 bad Long_Float->Float conversion if no memory store
    15555 PA/Linux: extend reg tracking with probable regs
    15468 PA/Linux386: try to keep loop_vars from overwriting
    15460 PA/Linux: swap operands to avoid spills
    15447 PA/Linux: register tracking for case_jump broken
    15442 PA/Linux: translation creates false noops for division op
    15441 PA5: cg opt regressions: %ECX not saved during type2 subp entry
    15435 PA/Linux: adbg support for type2 subprogs on IA32
    15424 IA32: use last_reg and minor optmz for loops
    15291 adbgdis.linux won't build properly from build_it2
    15284 powerada packed bool array handled as not-packed
    15094 dispatching call to 'size should return value in bits not bytes
    14856 PA_LINUX: optimize subprogram entry/exit sequences
    621  MP traceback - storage_size on pointer to private type
    15313 PA/Linux: bblk on_entry/on_exit for IA32
    15329 PA/Linux IA32: extend remove_extra_spills
    15295 PA/Linux optimization: avoid spills that may be saved in regs
    15340 PA/Linux: optimize stack pointer manipulations
    15364 PA/Linux: use diff. instructions for optimization
    15615 crash compiling subprogram_value'access with -O
    15611 crash compiling Type_Cvt(X)'Length with -O
    15585 Update_CM_Info broken for PA53/Linux/Razor
    15557 PA/LinuxIA32: unsigned division for longs broken
    15475 PA/Linux: minor cleanup after reviews
    15453 PA/LinuxIA32: emit phase doesn't handle no_ops
    15367 PA5: IA32 optimizer crashes when Do_Konstant_Binary overflows
    15363 PA/Linux: optimize multiplication by a constant
    15249 PA/Linux: debugger breaks on some exceptions in tasks
    14824 PA_LINUX: computes static byte offset in 2 instrs (slow)
    15675 powerada should not specify LM_DUP_DISP
    15679 PA5: add debugger into suite of boostrap hoster tools
    15680 PA5: self-host crash, array index is 16-bit, but mult is 32 bit
    15676 aprojflatten -R is totally broken
    15658 pa_tools ediff broken by faulty emacs-switcher.sh
    15685 PA5: c34005m crash computing array index (treats BYTE as LONG)
    15696 PA/LinuxIA32: make inline more aggressive
    15700 PA/Linux: Adaentry may crash in close_master_scope
    15652 PA5 To_Unsigned_Byte( Signed_Long ) fails to raise C_Err
    15712 create a new lm_job after queueing license
    15719 bad conditional spill </syntaxhighlight>

Latest revision as of 11:37, 31 May 2020

Release notes for current versions of OCS products are available at http://docs.ocsystems.com/w/index.php/OCS_Downloads. Login credentials are required to access downloads, contact Contact OC Systems for assistance.

A complete list of available release notes for earlier versions can be obtained via this search link.