FreeBSD/contrib/gcc/cp/tree.c
/* Returns 1 iff type T is a POD type, as defined in [basic.types].  */
Returns 1 iff type T is a POD type, as defined in [basic.types].
Returns 1 iff type T is a POD type as defined in [ basic . types ] .
int
pod_type_p (tree t)
{
  t = strip_array_types (t);
  if (t == error_mark_node)
    return 1;
  if (INTEGRAL_TYPE_P (t))
    return 1;  
  if (FLOAT_TYPE_P (t))
    return 1;
  if (TYPE_PTR_P (t))
    return 1; 
  if (TYPE_PTR_TO_MEMBER_P (t))
    return 1; 
  if (TREE_CODE (t) == VECTOR_TYPE)
    return 1; 
  if (! CLASS_TYPE_P (t))
    return 0; 
  if (CLASSTYPE_NON_POD_P (t))
    return 0;
  return 1;
}
int pod_type_p ( tree t ) { t = strip_array_types ( t ) ; if ( t == error_mark_node ) return 1 ; if ( INTEGRAL_TYPE_P ( t ) ) return 1 ; if ( FLOAT_TYPE_P ( t ) ) return 1 ; if ( TYPE_PTR_P ( t ) ) return 1 ; if ( TYPE_PTR_TO_MEMBER_P ( t ) ) return 1 ; if ( TREE_CODE ( t ) == VECTOR_TYPE ) return 1 ; if ( ! CLASS_TYPE_P ( t ) ) return 0 ; if ( CLASSTYPE_NON_POD_P ( t ) ) return 0 ; return 1 ; }
Returns 1 iff type T is a POD type, as defined in [basic.types].
Returns 1 iff type T is a POD type as defined in [ basic . types ] .
/* integral, character or enumeral type */ /* pointer to non-member */ /* pointer to member */ /* vectors are (small) arrays of scalars */ /* other non-class type (reference or function) */