+Thu Aug 20 13:15:11 1998 Dave Brolley <brolley@cygnus.com>
+
+ * stor-layout.c (layout_type): Compute TYPE_SIZE_UNIT correctly for
+ arrays of bits.
+ * cpplib.c (cpp_define): Handle macros with parameters.
+
Wed Aug 19 21:33:19 1998 David Edelsohn <edelsohn@mhpcc.edu>
* rs6000.c (rs6000_output_load_toc_table): Use ld for 64-bit.
}
while (is_idchar[*++p])
;
+ if (*p == '(') {
+ while (is_idchar[*++p] || *p == ',' || is_hor_space[*p])
+ ;
+ if (*p++ != ')')
+ p = (U_CHAR *) str; /* Error */
+ }
if (*p == 0)
{
buf = (U_CHAR *) alloca (p - buf + 4);
size directly, rather than do some division thing below.
This optimization helps Fortran assumed-size arrays
(where the size of the array is determined at runtime)
- substantially. */
- if (TYPE_SIZE_UNIT (element) != 0)
+ substantially.
+ Note that we can't do this in the case where the size of
+ the elements is one bit since TYPE_SIZE_UNIT cannot be
+ set correctly in that case. */
+ if (TYPE_SIZE_UNIT (element) != 0
+ && element_size != integer_one_node)
{
TYPE_SIZE_UNIT (type)
= size_binop (MULT_EXPR, TYPE_SIZE_UNIT (element), length);