EH patch for libstdc++

Richard Earnshaw Richard.Earnshaw@buzzard.freeserve.co.uk
Sun Jun 10 11:43:00 GMT 2007


On Fri, 2007-06-08 at 10:27 +0200, Benjamin Kosnik wrote:
> > Daniel Jacobowitz pointed out that your EH patch for the ARM EH code:
> > 
> >   http://gcc.gnu.org/ml/gcc-patches/2007-05/msg01572.html
> > 
> > had never been officially reviewed.  (I had mistakenly seen Paul's
> > review, and thought that was it -- but since this is libstdc++, Paul
> > can't approve the patch.)  I've looked at it, and it looks sane to me
> > as well, so please commit it.
> 
> I would prefer more minimal arm eh patching of eh_personality. See
> attached.

Except that your more minimal version doesn't even compile, for the same
reasons that Jason's original patch doesn't compile.

/home/rearnsha/gnusrc/gcc-cross/trunk/libstdc++-v3/libsupc
++/eh_personality.cc: In function '_Unwind_Reason_Code
__cxxabiv1::__gxx_personality_v0(_Unwind_State, _Unwind_Control_Block*,
_Unwind_Context*)':
/home/rearnsha/gnusrc/gcc-cross/trunk/libstdc++-v3/libsupc
++/eh_personality.cc:548: warning: dereferencing type-punned pointer
will break strict-aliasing rules
/home/rearnsha/gnusrc/gcc-cross/trunk/libstdc++-v3/libsupc
++/eh_personality.cc:548: error: cannot convert 'const std::type_info*'
to '_throw_typet*' in assignment
/home/rearnsha/gnusrc/gcc-cross/trunk/libstdc++-v3/libsupc
++/eh_personality.cc:555: warning: dereferencing type-punned pointer
will break strict-aliasing rules
/home/rearnsha/gnusrc/gcc-cross/trunk/libstdc++-v3/libsupc
++/eh_personality.cc:555: error: cannot convert 'const std::type_info*'
to '_throw_typet*' in assignment
/home/rearnsha/gnusrc/gcc-cross/trunk/libstdc++-v3/libsupc
++/eh_personality.cc:559: error: 'xh' was not declared in this scope
gnumake: *** [eh_personality.lo] Error 1

R.



More information about the Gcc-patches mailing list