diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0fb8a8c0514..7701fa03e3d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2001-06-04 John David Anglin + + * c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P. + (store_parm_decls): Likewise. + * c-typeck.c (convert_arguments): Likewise. + 2001-06-04 Richard Henderson * sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress diff --git a/gcc/c-decl.c b/gcc/c-decl.c index 7c02d0591d2..88a41f9f404 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -5155,8 +5155,7 @@ get_parm_info (void_at_end) tree type = TREE_TYPE (decl); DECL_ARG_TYPE (decl) = type; if (PROMOTE_PROTOTYPES - && (TREE_CODE (type) == INTEGER_TYPE - || TREE_CODE (type) == ENUMERAL_TYPE) + && INTEGRAL_TYPE_P (type) && TYPE_PRECISION (type) < TYPE_PRECISION (integer_type_node)) DECL_ARG_TYPE (decl) = integer_type_node; @@ -6443,8 +6442,7 @@ store_parm_decls () DECL_ARG_TYPE (parm) = TREE_TYPE (parm); if (PROMOTE_PROTOTYPES - && (TREE_CODE (TREE_TYPE (parm)) == INTEGER_TYPE - || TREE_CODE (TREE_TYPE (parm)) == ENUMERAL_TYPE) + && INTEGRAL_TYPE_P (TREE_TYPE (parm)) && TYPE_PRECISION (TREE_TYPE (parm)) < TYPE_PRECISION (integer_type_node)) DECL_ARG_TYPE (parm) = integer_type_node; diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index 71dae28e909..5705faafa0e 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -1766,9 +1766,7 @@ convert_arguments (typelist, values, name, fundecl) fundecl, name, parmnum + 1); if (PROMOTE_PROTOTYPES - && (TREE_CODE (type) == INTEGER_TYPE - || TREE_CODE (type) == ENUMERAL_TYPE - || TREE_CODE (type) == BOOLEAN_TYPE) + && INTEGRAL_TYPE_P (type) && (TYPE_PRECISION (type) < TYPE_PRECISION (integer_type_node))) parmval = default_conversion (parmval); }