libstdc++/5625: exception unwinding creates invalid pointer o n mips
cgd@broadcom.com
cgd@broadcom.com
Tue Apr 23 16:16:00 GMT 2002
The following reply was made to PR libstdc++/5625; it has been noted by GNATS.
From: cgd@broadcom.com
To: echristo@redhat.com
Cc: "Ed Maste" <emaste@sandvine.com>,
"'echristo@gcc.gnu.org'" <echristo@gcc.gnu.org>,
"'gcc-bugs@gcc.gnu.org'" <gcc-bugs@gcc.gnu.org>,
"'gcc-prs@gcc.gnu.org'" <gcc-prs@gcc.gnu.org>,
"'gcc-gnats@gcc.gnu.org'" <gcc-gnats@gcc.gnu.org>
Subject: Re: libstdc++/5625: exception unwinding creates invalid pointer
o n mips
Date: 23 Apr 2002 16:07:19 -0700
Eric asked me a further question off-list, and I responded:
> [I believe] The problem is that:
>
> typedef unsigned _Unwind_Ptr __attribute__((__mode__(__pointer__)));
>
> So the cast to _Unwind_Ptr makes the 32-bit result unsigned, and the
> promotion to the 64-bit _Unwind_Word happens therefore to zero extend,
> rather than sign extend.
>
> If _Unwind_Ptr were signed, the right thing should happen. (iirc; i
> seem to recall having discussed this with Ed previously [and him
> having confirmed that result, but I may be mistaken].)
chris
More information about the Gcc-prs
mailing list