Merge FreeBSD modifications into gcc 3.2.2 release:

1.2 kernel printf enhancements framework.
  1.3 suppress prototype warnings on K&R main.
This commit is contained in:
Alexander Kabaev 2003-02-10 05:59:19 +00:00
parent 76c39e5f7b
commit 10a72f72d8
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=110623

View File

@ -2030,9 +2030,10 @@ duplicate_decls (newdecl, olddecl, different_binding_level)
inline, make sure we emit debug info for the inline before we
throw it away, in case it was inlined into a function that hasn't
been written out yet. */
if (new_is_definition && DECL_INITIAL (olddecl) && TREE_USED (olddecl))
if (new_is_definition && DECL_INITIAL (olddecl))
{
(*debug_hooks->outlining_inline_function) (olddecl);
if (TREE_USED (olddecl))
(*debug_hooks->outlining_inline_function) (olddecl);
/* The new defn must not be inline. */
DECL_INLINE (newdecl) = 0;
@ -3130,55 +3131,6 @@ c_init_decl_processing ()
= build_function_type (ptr_type_node,
tree_cons (NULL_TREE, ptr_type_node, endlink));
/* Types which are common to the fortran compiler and libf2c. When
changing these, you also need to be concerned with f/com.h. */
if (TYPE_PRECISION (float_type_node)
== TYPE_PRECISION (long_integer_type_node))
{
g77_integer_type_node = long_integer_type_node;
g77_uinteger_type_node = long_unsigned_type_node;
}
else if (TYPE_PRECISION (float_type_node)
== TYPE_PRECISION (integer_type_node))
{
g77_integer_type_node = integer_type_node;
g77_uinteger_type_node = unsigned_type_node;
}
else
g77_integer_type_node = g77_uinteger_type_node = NULL_TREE;
if (g77_integer_type_node != NULL_TREE)
{
pushdecl (build_decl (TYPE_DECL, get_identifier ("__g77_integer"),
g77_integer_type_node));
pushdecl (build_decl (TYPE_DECL, get_identifier ("__g77_uinteger"),
g77_uinteger_type_node));
}
if (TYPE_PRECISION (float_type_node) * 2
== TYPE_PRECISION (long_integer_type_node))
{
g77_longint_type_node = long_integer_type_node;
g77_ulongint_type_node = long_unsigned_type_node;
}
else if (TYPE_PRECISION (float_type_node) * 2
== TYPE_PRECISION (long_long_integer_type_node))
{
g77_longint_type_node = long_long_integer_type_node;
g77_ulongint_type_node = long_long_unsigned_type_node;
}
else
g77_longint_type_node = g77_ulongint_type_node = NULL_TREE;
if (g77_longint_type_node != NULL_TREE)
{
pushdecl (build_decl (TYPE_DECL, get_identifier ("__g77_longint"),
g77_longint_type_node));
pushdecl (build_decl (TYPE_DECL, get_identifier ("__g77_ulongint"),
g77_ulongint_type_node));
}
pedantic_lvalues = pedantic;
make_fname_decl = c_make_fname_decl;