--- 1.1 1994/10/29 16:46:46 +++ expr.c 1994/10/29 16:48:43 @@ -4386,8 +4386,8 @@ /* Convert the integer argument to a type the same size as a pointer so the multiply won't overflow spuriously. */ - if (TYPE_PRECISION (index_type) != POINTER_SIZE) - index = convert (type_for_size (POINTER_SIZE, 0), index); + if (TYPE_MODE (index_type) != Pmode) + index = convert (type_for_mode (Pmode, 0), index); if (TREE_CODE (size) != INTEGER_CST && contains_placeholder_p (size))