[RTEMS Project] #2175: C++ Exception Catch Handler Crash on Sparc ERC32 Simulator(SIS)

Jiri Gaisler jiri at gaisler.se
Sun Nov 23 18:22:05 UTC 2014



On 11/23/2014 04:36 PM, Gedare Bloom wrote:
>  Is this fixed?

Seems OK with the new version of sis. Below is the log from cdtest.exe.
I'm using the leon3 bsp, but is should be the same on all sparc bsp's.

Jiri.

$ sparc-rtems4.11-sis -leon3 src/rtems/4.11/sparc-rtems4.11/leon3/lib/rtems-4.11/tests/cdtest.exe

 SIS - SPARC instruction simulator 2.8,  copyright Jiri Gaisler 1995
 Bug-reports to jiri at gaisler.se

 LEON3 emulation enabled

sis> run

GLOBAL: Hey I'm in base class constructor number 1 for 0x40033254.
GLOBAL: Hey I'm in base class constructor number 2 for 0x40033248.
GLOBAL: Hey I'm in derived class constructor number 3 for 0x40033248.


*** CONSTRUCTOR/DESTRUCTOR TEST ***
LOCAL: Hey I'm in base class constructor number 4 for 0x4003db60.
LOCAL: Hey I'm in base class constructor number 5 for 0x4003db6c.
LOCAL: Hey I'm in base class constructor number 6 for 0x4003db78.
LOCAL: Hey I'm in base class constructor number 7 for 0x4003db84.
LOCAL: Hey I'm in derived class constructor number 8 for 0x4003db84.
IO Stream not tested
LOCAL: Hey I'm in derived class destructor number 8 for 4003DB84.
Derived class - Instantiation order 8
LOCAL: Hey I'm in base class destructor number 7 for 4003DB84.
Derived class - Instantiation order 8
LOCAL: Hey I'm in base class destructor number 6 for 4003DB78.
Derived class - Instantiation order 6
LOCAL: Hey I'm in base class destructor number 5 for 4003DB6C.
Derived class - Instantiation order 5
LOCAL: Hey I'm in base class destructor number 4 for 4003DB60.
Derived class - Instantiation order 5
*** END OF CONSTRUCTOR/DESTRUCTOR TEST ***


*** TESTING C++ EXCEPTIONS ***

foo_function() catch block called:
   < foo_function() throw this exception  >
Success catching a char * exception
foo_function() re-throwing execption...
throw an instance based exception
RtemsException raised=File:../../../../../../../rtems-4.11/c/src/../../testsuites/samples/cdtest/main.cc, Line:199, Error=55
Success catching RtemsException...
RtemsException ---> File:../../../../../../../rtems-4.11/c/src/../../testsuites/samples/cdtest/main.cc, Line:199, Error=55
Exceptions are working properly.
Global Dtors should be called after this line....
GLOBAL: Hey I'm in derived class destructor number 3 for 40033248.
Derived class - Instantiation order 3
GLOBAL: Hey I'm in base class destructor number 2 for 40033248.
Derived class - Instantiation order 3
GLOBAL: Hey I'm in base class destructor number 1 for 40033254.
Derived class - Instantiation order 1


> 
>> On Sun, Nov 23, 2014 at 10:13 AM, RTEMS trac <trac at rtems.org> wrote:
>>> #2175: C++ Exception Catch Handler Crash on Sparc ERC32 Simulator(SIS)
>>> ----------------------+-----------------------------
>>>  Reporter:  jbkim     |       Owner:  ralf.corsepius
>>>      Type:  defect    |      Status:  closed
>>>  Priority:  normal    |   Milestone:  4.11
>>> Component:  GCC       |     Version:  4.11
>>>  Severity:  critical  |  Resolution:  fixed
>>>  Keywords:            |
>>> ----------------------+-----------------------------
>>> Changes (by joel.sherrill):
>>>
>>>  * status:  new => closed
>>>  * version:  unknown => 4.11
>>>  * resolution:   => fixed
>>>
>>>
>>> --
>>> Ticket URL: <http://devel.rtems.org/ticket/2175#comment:3>
>>> RTEMS Project <http://www.rtems.org/>
>>> RTEMS Project
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
> 


More information about the devel mailing list