FreeBSD/contrib/gcc/cp/decl.c
/* Subroutine of reshape_init_r, processes the initializers for vectors.
   Parameters are the same of reshape_init_r.  */
Subroutine of reshape_init_r, processes the initializers for vectors.
Parameters are the same of reshape_init_r.
Subroutine of reshape_init_r processes the initializers for vectors . Parameters are the same of reshape_init_r .
static tree
reshape_init_vector (tree type, reshape_iter *d)
{
  tree max_index = NULL_TREE;
  tree rtype;
  gcc_assert (TREE_CODE (type) == VECTOR_TYPE);
  if (COMPOUND_LITERAL_P (d->cur->value))
    {
      tree value = d->cur->value;
      if (!same_type_p (TREE_TYPE (value), type))
	{
	  error ("invalid type %qT as initializer for a vector of type %qT",
		TREE_TYPE (d->cur->value), type);
	  value = error_mark_node;
	}
      ++d->cur;
      return value;
    }
  rtype = TYPE_DEBUG_REPRESENTATION_TYPE (type);
  if (rtype && TYPE_DOMAIN (TREE_TYPE (TYPE_FIELDS (rtype))))
    max_index = array_type_nelts (TREE_TYPE (TYPE_FIELDS (rtype)));
  return reshape_init_array_1 (TREE_TYPE (type), max_index, d);
}
static tree reshape_init_vector ( tree type , reshape_iter * d ) { tree max_index = NULL_TREE ; tree rtype ; gcc_assert ( TREE_CODE ( type ) == VECTOR_TYPE ) ; if ( COMPOUND_LITERAL_P ( d -> cur -> value ) ) { tree value = d -> cur -> value ; if ( ! same_type_p ( TREE_TYPE ( value ) , type ) ) { error ( " " , TREE_TYPE ( d -> cur -> value ) , type ) ; value = error_mark_node ; } ++ d -> cur ; return value ; } rtype = TYPE_DEBUG_REPRESENTATION_TYPE ( type ) ; if ( rtype && TYPE_DOMAIN ( TREE_TYPE ( TYPE_FIELDS ( rtype ) ) ) ) max_index = array_type_nelts ( TREE_TYPE ( TYPE_FIELDS ( rtype ) ) ) ; return reshape_init_array_1 ( TREE_TYPE ( type ) , max_index , d ) ; }
Subroutine of reshape_init_r, processes the initializers for vectors.
Subroutine of reshape_init_r processes the initializers for vectors .
/* For a vector, the representation type is a struct
      containing a single member which is an array of the
      appropriate size.  */