------- Additional Comments From law at redhat dot com 2005-04-15 18:25 ------- Subject: Re: [PR middle-end/20739] lvalue cond-expr gimplification may crash on cv-qual diffs
On Thu, 2005-04-14 at 14:02 -0300, Alexandre Oliva wrote: > On Apr 4, 2005, Alexandre Oliva <[EMAIL PROTECTED]> wrote: > > > If the operands of a cond-expr used as an lvalue differ in cv > > qualification, the front-end adds nop_exprs to add cv qualifiers that > > the gimplifier drops when simplifying &(T const)*v. The `&' was added > > by gimplify_cond_expr. > > > The problem is that gimplify_addr_expr gimplifies its operand in such > > a way that the nop_expr is dropped, and nothing puts it back in, so > > when we test that, in the indirect_ref case in gimplify_addr_expr, the > > types are compatible, the test fails because of the missing > > cv-qualifier in the pointed-to type. This patch fixes this. > > > Ok to install if bootstrap and regtest on amd64-linux-gnu pass? > > Bootstrap and regtest pased on amd64-linux-gnu, at least for mainline. > I'm retesting on the branch, since I'm not entirely sure I actually > tested it there. Approved for mainline. Mark has final call on the branch. jeff -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20739