[PATCH,libstdc++] unwind-cxx.h: correct prototypes for ARM EH routines (PR libstdc++/44902)

Mikael Pettersson mikpe@it.uu.se
Tue Jul 20 09:47:00 GMT 2010


Mikael Pettersson writes:
 > The prototypes for two ARM EH routines don't match their actual
 > definitions in eh_arm.cc, resulting in build-time warnings.  When
 > -Werror is active, the build fails.  See PR44902.
 > 
 > Fixed simply by updating the prototypes to match the definitions.
 > 
 > Tested with crosses to arm-eabi and arm-linux-gnueabi, and with
 > a native bootstrap and regtest on arm-linux-gnueabi.
 > 
 > Ok for 4.6? 4.5? (I don't have svn write access.)
 > 
 > libstdc++-v3/
 > 
 > 2010-07-20  Mikael Pettersson  <mikpe@it.uu.se>
 > 
 > 	PR libstdc++/44902
 > 	* libsupc++/unwind-cxx.h (__cxa_type_match): Correct prototype.
 > 	(__cxa_begin_cleanup): Likewise.

Please ignore, I mistakenly cc:d gcc not gcc-patches.


 > 
 > --- gcc-4.6-20100717/libstdc++-v3/libsupc++/unwind-cxx.h.~1~	2009-05-03 18:51:50.000000000 +0200
 > +++ gcc-4.6-20100717/libstdc++-v3/libsupc++/unwind-cxx.h	2010-07-20 11:18:42.000000000 +0200
 > @@ -196,9 +196,9 @@ typedef enum {
 >    ctm_succeeded = 1,
 >    ctm_succeeded_with_ptr_to_base = 2
 >  } __cxa_type_match_result;
 > -extern "C" bool __cxa_type_match(_Unwind_Exception*, const std::type_info*,
 > -				 bool, void**);
 > -extern "C" void __cxa_begin_cleanup (_Unwind_Exception*);
 > +extern "C" __cxa_type_match_result __cxa_type_match(_Unwind_Exception*, const std::type_info*,
 > +						    bool, void**);
 > +extern "C" bool __cxa_begin_cleanup (_Unwind_Exception*);
 >  extern "C" void __cxa_end_cleanup (void);
 >  #endif
 >  



More information about the Gcc mailing list