Commit 263fb23d by Devang Patel Committed by Devang Patel

re PR tree-optimization/19952 (ICE: tree check: expected class 'declaration',…

re PR tree-optimization/19952 (ICE: tree check: expected class 'declaration', have 'statement' (label_expr) in tree_verify_flow_info, at tree-cfg.c:3709)

       PR 19952
       * tree-if-conv.c (process_phi_nodes): Use bsi_after_labels and skip
       all labels
       * g++.dg/tree-ssa/pr19952.C: New test.

From-SVN: r95430
parent a47e0c22
2005-02-22 Devang Patel <dpatel@apple.com>
PR 19952
* tree-if-conv.c (process_phi_nodes): Use bsi_after_labels and skip
all labels
2005-02-22 David Edelsohn <edelsohn@gnu.org> 2005-02-22 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/aix.h (WINT_TYPE): Define. * config/rs6000/aix.h (WINT_TYPE): Define.
......
2005-02-22 Devang Patel <dpatel@apple.com>
PR 19952
* g++.dg/tree-ssa/pr19952.C: New test.
2005-02-22 Mark Mitchell <mark@codesourcery.com> 2005-02-22 Mark Mitchell <mark@codesourcery.com>
PR c++/19883 PR c++/19883
......
/* PR 19952 */
/* { dg-compile } */
/* { dg-options "-ftree-vectorize -O2" } */
int i;
struct A
{
~A() { ++i; }
};
struct B
{
A a;
};
void foo()
{
for (int i=0; i<2; ++i)
{
B *p;
if (p) p->~B();
}
}
...@@ -830,7 +830,7 @@ process_phi_nodes (struct loop *loop) ...@@ -830,7 +830,7 @@ process_phi_nodes (struct loop *loop)
continue; continue;
phi = phi_nodes (bb); phi = phi_nodes (bb);
bsi = bsi_start (bb); bsi = bsi_after_labels (bb);
/* BB has two predecessors. Using predecessor's aux field, set /* BB has two predecessors. Using predecessor's aux field, set
appropriate condition for the PHI node replacement. */ appropriate condition for the PHI node replacement. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment