FreeBSD/contrib/gcc/cp/typeck.c
/* Return true if two parameter type lists PARMS1 and PARMS2 are
   equivalent in the sense that functions with those parameter types
   can have equivalent types.  The two lists must be equivalent,
   element by element.  */
Return true if two parameter type lists PARMS1 and PARMS2 are
equivalent in the sense that functions with those parameter types
can have equivalent types.  The two lists must be equivalent,
element by element.
Return true if two parameter type lists PARMS1 and PARMS2 are equivalent in the sense that functions with those parameter types can have equivalent types . The two lists must be equivalent element by element .
bool
compparms (tree parms1, tree parms2)
{
  tree t1, t2;
  for (t1 = parms1, t2 = parms2;
       t1 || t2;
       t1 = TREE_CHAIN (t1), t2 = TREE_CHAIN (t2))
    {
      if (!t1 || !t2)
	return false;
      if (!same_type_p (TREE_VALUE (t1), TREE_VALUE (t2)))
	return false;
    }
  return true;
}
bool compparms ( tree parms1 , tree parms2 ) { tree t1 , t2 ; for ( t1 = parms1 , t2 = parms2 ; t1 || t2 ; t1 = TREE_CHAIN ( t1 ) , t2 = TREE_CHAIN ( t2 ) ) { if ( ! t1 || ! t2 ) return false ; if ( ! same_type_p ( TREE_VALUE ( t1 ) , TREE_VALUE ( t2 ) ) ) return false ; } return true ; }
Return true if two parameter type lists PARMS1 and PARMS2 are
equivalent in the sense that functions with those parameter types
can have equivalent types.
Return true if two parameter type lists PARMS1 and PARMS2 are equivalent in the sense that functions with those parameter types can have equivalent types .
/* An unspecified parmlist matches any specified parmlist
     whose argument types don't need default promotions.  */ /* If one parmlist is shorter than the other,
	 they fail to match.  */