mirror of git://gcc.gnu.org/git/gcc.git
re PR middle-end/35043 (ICE in tree-data-ref because signed_type_for_types returns NULL)
2008-02-04 Richard Guenther <rguenther@suse.de> PR middle-end/35043 * gimplify.c (gimplify_init_ctor_eval): Convert array indices to TYPE_DOMAINs base type instead of using bitsizetype here. * gcc.c-torture/compile/pr35043.c: New testcase. From-SVN: r132091
This commit is contained in:
parent
0fcedd9c98
commit
1a1640dbb3
|
@ -1,3 +1,9 @@
|
||||||
|
2008-02-04 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR middle-end/35043
|
||||||
|
* gimplify.c (gimplify_init_ctor_eval): Convert array indices
|
||||||
|
to TYPE_DOMAINs base type instead of using bitsizetype here.
|
||||||
|
|
||||||
2008-02-03 Jason Merrill <jason@redhat.com>
|
2008-02-03 Jason Merrill <jason@redhat.com>
|
||||||
|
|
||||||
* print-tree.c (print_node) [CONSTRUCTOR]: Print elements.
|
* print-tree.c (print_node) [CONSTRUCTOR]: Print elements.
|
||||||
|
|
|
@ -3096,6 +3096,10 @@ gimplify_init_ctor_eval (tree object, VEC(constructor_elt,gc) *elts,
|
||||||
|
|
||||||
if (array_elt_type)
|
if (array_elt_type)
|
||||||
{
|
{
|
||||||
|
/* Do not use bitsizetype for ARRAY_REF indices. */
|
||||||
|
if (TYPE_DOMAIN (TREE_TYPE (object)))
|
||||||
|
purpose = fold_convert (TREE_TYPE (TYPE_DOMAIN (TREE_TYPE (object))),
|
||||||
|
purpose);
|
||||||
cref = build4 (ARRAY_REF, array_elt_type, unshare_expr (object),
|
cref = build4 (ARRAY_REF, array_elt_type, unshare_expr (object),
|
||||||
purpose, NULL_TREE, NULL_TREE);
|
purpose, NULL_TREE, NULL_TREE);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2008-02-04 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR middle-end/35043
|
||||||
|
* gcc.c-torture/compile/pr35043.c: New testcase.
|
||||||
|
|
||||||
2008-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
|
2008-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
|
||||||
|
|
||||||
* g++.dg/tree-ssa/ivopts-1.C: Remove xfail for hppa*-*-*.
|
* g++.dg/tree-ssa/ivopts-1.C: Remove xfail for hppa*-*-*.
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
typedef long unsigned int size_t;
|
||||||
|
typedef struct {
|
||||||
|
long double dat[2];
|
||||||
|
} gsl_complex_long_double;
|
||||||
|
typedef struct {
|
||||||
|
size_t size;
|
||||||
|
size_t stride;
|
||||||
|
long double *data;
|
||||||
|
} gsl_vector_complex_long_double;
|
||||||
|
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v)
|
||||||
|
{
|
||||||
|
long double * const data = v->data;
|
||||||
|
const size_t n = v->size;
|
||||||
|
const size_t stride = v->stride;
|
||||||
|
const gsl_complex_long_double zero = { { 0.0L,0.0L} } ;
|
||||||
|
size_t i;
|
||||||
|
for (i = 0; i < n; i++)
|
||||||
|
*(gsl_complex_long_double *) (data + 2 * i * stride) = zero;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue