FreeBSD/contrib/gcc/cp/decl.c
/* INIT is the initializer for a variable, as represented by the
   parser.  Returns true iff INIT is value-dependent.  */
INIT is the initializer for a variable, as represented by the
parser.  Returns true iff INIT is value-dependent.
INIT is the initializer for a variable as represented by the parser . Returns true iff INIT is value - dependent .
static bool
value_dependent_init_p (tree init)
{
  if (TREE_CODE (init) == TREE_LIST)
    return any_value_dependent_elements_p (init);
  else if (TREE_CODE (init) == CONSTRUCTOR)
    {
      VEC(constructor_elt, gc) *elts;
      size_t nelts;
      size_t i;
      elts = CONSTRUCTOR_ELTS (init);
      nelts = VEC_length (constructor_elt, elts);
      for (i = 0; i < nelts; ++i)
	if (value_dependent_init_p (VEC_index (constructor_elt,
					       elts, i)->value))
	  return true;
    }
  else
    return value_dependent_expression_p (init);
  return false;
}
static bool value_dependent_init_p ( tree init ) { if ( TREE_CODE ( init ) == TREE_LIST ) return any_value_dependent_elements_p ( init ) ; else if ( TREE_CODE ( init ) == CONSTRUCTOR ) { VEC ( constructor_elt , gc ) * elts ; size_t nelts ; size_t i ; elts = CONSTRUCTOR_ELTS ( init ) ; nelts = VEC_length ( constructor_elt , elts ) ; for ( i = 0 ; i < nelts ; ++ i ) if ( value_dependent_init_p ( VEC_index ( constructor_elt , elts , i ) -> value ) ) return true ; } else return value_dependent_expression_p ( init ) ; return false ; }
INIT is the initializer for a variable, as represented by the
parser.
INIT is the initializer for a variable as represented by the parser .
/* A parenthesized initializer, e.g.: int i (3, 2); ? */ /* A brace-enclosed initializer, e.g.: int i = { 3 }; ? */ /* It must be a simple expression, e.g., int i = 3;  */