os/kernelhwsrv/kernel/eka/compsupp/aehabi/Readme
changeset 0 bde4ae8d615e
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/os/kernelhwsrv/kernel/eka/compsupp/aehabi/Readme	Fri Jun 15 03:10:57 2012 +0200
     1.3 @@ -0,0 +1,23 @@
     1.4 +Exceptions library release 1.01.
     1.5 +
     1.6 +This source code is intended to be compliant with release 1.0 of the EHABI. 
     1.7 +
     1.8 +The following defects against the previous (1.0) release have been fixed:
     1.9 +
    1.10 +1) The personality routines were checking handler table entry descriptor
    1.11 +ranges using virtual r14 not virtual r15. Consequently if the entry contained
    1.12 +two or more descriptors with matching ranges, and the first was a cleanup,
    1.13 +subsequent descriptors would incorrectly fail the range check because the
    1.14 +cleanup code legitimately corrupted r14 (and hence virtual r14; virtual r15
    1.15 +is preserved).
    1.16 +
    1.17 +2) The runtime library would call abort() instead of terminate() under this
    1.18 +sequence of events:
    1.19 +i)   The program installs an unexpected exception handler (set_unexpected(...)).
    1.20 +ii)  A throw of type T violates a function exception specification, causing
    1.21 +     unexpected() to be called and the user's handler to be entered.
    1.22 +iii) The handler throws another exception of type T.
    1.23 +
    1.24 +3) Type matching when throwing a NULL pointer to pointer to T (any type T)
    1.25 +could dereference down the "pointer" chain beginning at location 0 (=NULL),
    1.26 +hence possibly accessing any location in memory.
    1.27 \ No newline at end of file