OSDN Git Service

2009-05-08 Tobias Burnus <burnus@net-b.de>
[pf3gnuchains/gcc-fork.git] / gcc / langhooks.c
index cdf1b6a..8579062 100644 (file)
@@ -105,6 +105,9 @@ lhd_return_null_const_tree (const_tree ARG_UNUSED (t))
 bool
 lhd_post_options (const char ** ARG_UNUSED (pfilename))
 {
+  /* Excess precision other than "fast" requires front-end
+     support.  */
+  flag_excess_precision_cmdline = EXCESS_PRECISION_FAST;
   return false;
 }
 
@@ -117,14 +120,6 @@ lhd_print_tree_nothing (FILE * ARG_UNUSED (file),
 {
 }
 
-/* Called from staticp.  */
-
-tree
-lhd_staticp (tree ARG_UNUSED (exp))
-{
-  return NULL;
-}
-
 /* Called from check_global_declarations.  */
 
 bool
@@ -216,17 +211,6 @@ lhd_get_alias_set (tree ARG_UNUSED (t))
   return -1;
 }
 
-/* This is the default expand_expr function.  */
-
-rtx
-lhd_expand_expr (tree ARG_UNUSED (t), rtx ARG_UNUSED (r),
-                enum machine_mode ARG_UNUSED (mm),
-                int ARG_UNUSED (em),
-                rtx * ARG_UNUSED (a))
-{
-  gcc_unreachable ();
-}
-
 /* This is the default decl_printable_name function.  */
 
 const char *
@@ -396,11 +380,11 @@ lhd_print_error_function (diagnostic_context *context, const char *file,
          if (TREE_CODE (TREE_TYPE (fndecl)) == METHOD_TYPE)
            pp_printf
              (context->printer, _("In member function %qs"),
-              lang_hooks.decl_printable_name (fndecl, 2));
+              identifier_to_locale (lang_hooks.decl_printable_name (fndecl, 2)));
          else
            pp_printf
              (context->printer, _("In function %qs"),
-              lang_hooks.decl_printable_name (fndecl, 2));
+              identifier_to_locale (lang_hooks.decl_printable_name (fndecl, 2)));
 
          while (abstract_origin)
            {
@@ -451,18 +435,18 @@ lhd_print_error_function (diagnostic_context *context, const char *file,
                      if (flag_show_column && s.column != 0)
                        pp_printf (context->printer,
                                   _("    inlined from %qs at %s:%d:%d"),
-                                  lang_hooks.decl_printable_name (fndecl, 2),
+                                  identifier_to_locale (lang_hooks.decl_printable_name (fndecl, 2)),
                                   s.file, s.line, s.column);
                      else
                        pp_printf (context->printer,
                                   _("    inlined from %qs at %s:%d"),
-                                  lang_hooks.decl_printable_name (fndecl, 2),
+                                  identifier_to_locale (lang_hooks.decl_printable_name (fndecl, 2)),
                                   s.file, s.line);
 
                    }
                  else
                    pp_printf (context->printer, _("    inlined from %qs"),
-                              lang_hooks.decl_printable_name (fndecl, 2));
+                              identifier_to_locale (lang_hooks.decl_printable_name (fndecl, 2)));
                }
            }
          pp_character (context->printer, ':');
@@ -546,9 +530,10 @@ add_builtin_function_common (const char *name,
   DECL_EXTERNAL (decl)       = 1;
   DECL_BUILT_IN_CLASS (decl) = cl;
 
-  DECL_FUNCTION_CODE (decl)  = -1;
-  gcc_assert (DECL_FUNCTION_CODE (decl) >= function_code);
-  DECL_FUNCTION_CODE (decl)  = function_code;
+  DECL_FUNCTION_CODE (decl)  = (enum built_in_function) function_code;
+
+  /* DECL_FUNCTION_CODE is a bitfield; verify that the value fits.  */
+  gcc_assert (DECL_FUNCTION_CODE (decl) == function_code);
 
   if (library_name)
     {