Mon Sep 14 16:46:36 1998 Dave Brolley <brolley@cygnus.com>
+ * typeck.c (build_chill_slice): Always use TYPE_DOMAIN to get the
+ domain type of the array.
+
* expr.c (build_chill_function_call): Remove redundant call to
chill_convert_to_assignment
if (TREE_CODE (array_type) == ARRAY_TYPE)
{
tree domain_type = TYPE_DOMAIN (array_type);
- tree index_domain
- = TREE_CODE (length) != INTEGER_CST || integer_zerop (length)
- ? sizetype
- : domain_type;
- tree domain_min = convert (index_domain, TYPE_MIN_VALUE (domain_type));
- tree domain_max = fold (build (PLUS_EXPR, index_domain,
+ tree domain_min = TYPE_MIN_VALUE (domain_type);
+ tree domain_max = fold (build (PLUS_EXPR, domain_type,
domain_min,
- convert (index_domain,
- size_binop (MINUS_EXPR,
- length,
- integer_one_node))));
- tree index_type = build_chill_range_type (domain_type,
+ size_binop (MINUS_EXPR,
+ length, integer_one_node)));
+ tree index_type = build_chill_range_type (TYPE_DOMAIN (array_type),
domain_min,
domain_max);