FreeBSD/contrib/gcc/cp/mangle.c
/* Produce debugging output of current substitution candidates.  */
Produce debugging output of current substitution candidates.
Produce debugging output of current substitution candidates .
static void
dump_substitution_candidates (void)
{
  unsigned i;
  tree el;
  fprintf (stderr, "  ++ substitutions  ");
  for (i = 0; VEC_iterate (tree, G.substitutions, i, el); ++i)
    {
      const char *name = "???";
      if (i > 0)
	fprintf (stderr, "                    ");
      if (DECL_P (el))
	name = IDENTIFIER_POINTER (DECL_NAME (el));
      else if (TREE_CODE (el) == TREE_LIST)
	name = IDENTIFIER_POINTER (DECL_NAME (TREE_VALUE (el)));
      else if (TYPE_NAME (el))
	name = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (el)));
      fprintf (stderr, " S%d_ = ", i - 1);
      if (TYPE_P (el) &&
	  (CP_TYPE_RESTRICT_P (el)
	   || CP_TYPE_VOLATILE_P (el)
	   || CP_TYPE_CONST_P (el)))
	fprintf (stderr, "CV-");
      fprintf (stderr, "%s (%s at %p)\n",
	       name, tree_code_name[TREE_CODE (el)], (void *) el);
    }
}
static void dump_substitution_candidates ( void ) { unsigned i ; tree el ; fprintf ( stderr , " " ) ; for ( i = 0 ; VEC_iterate ( tree , G . substitutions , i , el ) ; ++ i ) { const char * name = " " ; if ( i > 0 ) fprintf ( stderr , " " ) ; if ( DECL_P ( el ) ) name = IDENTIFIER_POINTER ( DECL_NAME ( el ) ) ; else if ( TREE_CODE ( el ) == TREE_LIST ) name = IDENTIFIER_POINTER ( DECL_NAME ( TREE_VALUE ( el ) ) ) ; else if ( TYPE_NAME ( el ) ) name = IDENTIFIER_POINTER ( DECL_NAME ( TYPE_NAME ( el ) ) ) ; fprintf ( stderr , " " , i - 1 ) ; if ( TYPE_P ( el ) && ( CP_TYPE_RESTRICT_P ( el ) || CP_TYPE_VOLATILE_P ( el ) || CP_TYPE_CONST_P ( el ) ) ) fprintf ( stderr , " " ) ; fprintf ( stderr , " \n " , name , tree_code_name [ TREE_CODE ( el ) ] , ( void * ) el ) ; } }
Produce debugging output of current substitution candidates.
Produce debugging output of current substitution candidates .