changeset 112023:ac49e05bfcf2

Remove unused declarations * src/buffer.c: Remove unused declarations. * src/buffer.h: Likewise. * src/charset.h: Likewise. * src/composite.h: Likewise. * src/dispextern.h: Likewise. * src/dispnew.c: Likewise. * src/font.h: Likewise. * src/fontset.c: Likewise. * src/fontset.h: Likewise. * src/intervals.h: Likewise. * src/keymap.h: Likewise. * src/lisp.h: Likewise. * src/syntax.c: Likewise. * src/syntax.h: Likewise. * src/termhooks.h: Likewise. * src/window.h: Likewise. * src/xsettings.h: Likewise. * src/xterm.c: Likewise. * src/xterm.h: Likewise. * src/chartab.c (sub_char_table_ref): Make static. * src/dispnew.c (line_hash_code, required_matrix_height) (required_matrix_width): Likewise. * src/eval.c (interactive_p, apply_lambda): Likewise. * src/fns.c (string_make_multibyte, copy_hash_table, hash_clear): Likewise. * src/font.c (QCadstyle, QCregistry, font_make_spec) (font_parse_fcname, font_encode_char, font_at): Likewise. * src/frame.c (x_frame_get_arg): Likewise. * src/keymap.c (get_keyelt): Likewise. * src/lread.c (read_filtered_event): Likewise. * src/print.c (write_string_1): Likewise. * src/window.c (delete_window, window_height, window_width) (foreach_window): Likewise. * src/xrdb.c (x_get_customization_string, x_get_resource): Likewise. * src/xterm.c (x_scroll_bar_clear, xembed_set_info) (xembed_send_message): Likewise. * src/eval.c (run_hook_list_with_args): Delete. * src/font.c (font_unparse_gtkname, font_update_lface): Likewise. * src/terminal.c (get_terminal_param): Likewise. * src/xterm.c (x_alloc_lighter_color_for_widget): Likewise.
author Andreas Schwab <schwab@linux-m68k.org>
date Mon, 27 Dec 2010 18:29:38 +0100
parents 5753dd68911a
children 68a3b6b312ee
files src/ChangeLog src/buffer.c src/buffer.h src/charset.h src/chartab.c src/composite.h src/dispextern.h src/dispnew.c src/eval.c src/fns.c src/font.c src/font.h src/fontset.c src/fontset.h src/frame.c src/intervals.h src/keymap.c src/keymap.h src/lisp.h src/lread.c src/print.c src/syntax.c src/syntax.h src/termhooks.h src/terminal.c src/window.c src/window.h src/xrdb.c src/xsettings.h src/xterm.c src/xterm.h
diffstat 31 files changed, 143 insertions(+), 541 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/ChangeLog	Mon Dec 27 18:29:38 2010 +0100
@@ -1,5 +1,48 @@
 2010-12-27  Andreas Schwab  <schwab@linux-m68k.org>
 
+	* buffer.c: Remove unused declarations.
+	* buffer.h: Likewise.
+	* charset.h: Likewise.
+	* composite.h: Likewise.
+	* dispextern.h: Likewise.
+	* dispnew.c: Likewise.
+	* font.h: Likewise.
+	* fontset.c: Likewise.
+	* fontset.h: Likewise.
+	* intervals.h: Likewise.
+	* keymap.h: Likewise.
+	* lisp.h: Likewise.
+	* syntax.c: Likewise.
+	* syntax.h: Likewise.
+	* termhooks.h: Likewise.
+	* window.h: Likewise.
+	* xsettings.h: Likewise.
+	* xterm.c: Likewise.
+	* xterm.h: Likewise.
+
+	* chartab.c (sub_char_table_ref): Make static.
+	* dispnew.c (line_hash_code, required_matrix_height)
+	(required_matrix_width): Likewise.
+	* eval.c (interactive_p, apply_lambda): Likewise.
+	* fns.c (string_make_multibyte, copy_hash_table, hash_clear):
+	Likewise.
+	* font.c (QCadstyle, QCregistry, font_make_spec)
+	(font_parse_fcname, font_encode_char, font_at): Likewise.
+	* frame.c (x_frame_get_arg): Likewise.
+	* keymap.c (get_keyelt): Likewise.
+	* lread.c (read_filtered_event): Likewise.
+	* print.c (write_string_1): Likewise.
+	* window.c (delete_window, window_height, window_width)
+	(foreach_window): Likewise.
+	* xrdb.c (x_get_customization_string, x_get_resource): Likewise.
+	* xterm.c (x_scroll_bar_clear, xembed_set_info)
+	(xembed_send_message): Likewise.
+
+	* eval.c (run_hook_list_with_args): Delete.
+	* font.c (font_unparse_gtkname, font_update_lface): Likewise.
+	* terminal.c (get_terminal_param): Likewise.
+	* xterm.c (x_alloc_lighter_color_for_widget): Likewise.
+
 	* scroll.c: Fix comment.
 
 	* dispnew.c (add_window_display_history)
--- a/src/buffer.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/buffer.c	Mon Dec 27 18:29:38 2010 +0100
@@ -105,7 +105,6 @@
 
 int last_per_buffer_idx;
 
-EXFUN (Fset_buffer, 1);
 static void call_overlay_mod_hooks (Lisp_Object list, Lisp_Object overlay,
                                     int after, Lisp_Object arg1,
                                     Lisp_Object arg2, Lisp_Object arg3);
@@ -3777,8 +3776,6 @@
 }
 
 
-Lisp_Object Fdelete_overlay (Lisp_Object overlay);
-
 static struct Lisp_Overlay *
 unchain_overlay (struct Lisp_Overlay *list, struct Lisp_Overlay *overlay)
 {
--- a/src/buffer.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/buffer.h	Mon Dec 27 18:29:38 2010 +0100
@@ -895,14 +895,11 @@
       }									\
   } while (0)
 
-EXFUN (Fbuffer_list, 1);
 EXFUN (Fbuffer_live_p, 1);
 EXFUN (Fbuffer_name, 1);
-EXFUN (Fget_file_buffer, 1);
 EXFUN (Fnext_overlay_change, 1);
 EXFUN (Fdelete_overlay, 1);
 EXFUN (Fbuffer_local_value, 2);
-EXFUN (Fgenerate_new_buffer_name, 2);
 
 /* Functions to call before and after each text change.  */
 extern Lisp_Object Vbefore_change_functions;
--- a/src/charset.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/charset.h	Mon Dec 27 18:29:38 2010 +0100
@@ -544,8 +544,6 @@
                                Lisp_Object, Lisp_Object,
                                struct charset *, unsigned, unsigned);
 
-EXFUN (Funify_charset, 3);
-
 #endif /* EMACS_CHARSET_H */
 
 /* arch-tag: 3b96db55-4961-481d-ac3e-219f46a2b3aa
--- a/src/chartab.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/chartab.c	Mon Dec 27 18:29:38 2010 +0100
@@ -168,7 +168,7 @@
   return copy;
 }
 
-Lisp_Object
+static Lisp_Object
 sub_char_table_ref (Lisp_Object table, int c)
 {
   struct Lisp_Sub_Char_Table *tbl = XSUB_CHAR_TABLE (table);
--- a/src/composite.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/composite.h	Mon Dec 27 18:29:38 2010 +0100
@@ -322,8 +322,6 @@
 
 extern EMACS_INT composition_adjust_point (EMACS_INT, EMACS_INT);
 
-EXFUN (Fcompose_region_internal, 4);
-EXFUN (Fcompose_string_internal, 5);
 EXFUN (Fcomposition_get_gstring, 4);
 
 #endif /* not EMACS_COMPOSITE_H */
--- a/src/dispextern.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/dispextern.h	Mon Dec 27 18:29:38 2010 +0100
@@ -3231,7 +3231,6 @@
 
 extern Lisp_Object tip_frame;
 extern Window tip_window;
-EXFUN (Fx_show_tip, 6);
 EXFUN (Fx_hide_tip, 0);
 extern void start_hourglass (void);
 extern void cancel_hourglass (void);
@@ -3275,8 +3274,6 @@
 /* Defined in dispnew.c  */
 
 extern int inverse_video;
-extern int required_matrix_width (struct window *);
-extern int required_matrix_height (struct window *);
 extern Lisp_Object buffer_posn_from_coords (struct window *,
                                             int *, int *,
                                             struct display_pos *,
@@ -3294,7 +3291,6 @@
 extern void redraw_garbaged_frames (void);
 extern void cancel_line (int, struct frame *);
 extern void init_desired_glyphs (struct frame *);
-extern int scroll_frame_lines (struct frame *, int, int, int, int);
 extern int update_frame (struct frame *, int, int);
 extern int scrolling (struct frame *);
 extern void bitch_at_user (void);
@@ -3316,7 +3312,6 @@
 void enable_glyph_matrix_rows (struct glyph_matrix *, int, int, int);
 void clear_glyph_row (struct glyph_row *);
 void prepare_desired_row (struct glyph_row *);
-int line_hash_code (struct glyph_row *);
 void set_window_update_flags (struct window *, int);
 void update_single_window (struct window *, int);
 void do_pending_window_change (int);
@@ -3393,9 +3388,6 @@
 extern Lisp_Object x_get_arg (Display_Info *, Lisp_Object,
                               Lisp_Object, const char *, const char *class,
                               enum resource_types);
-extern Lisp_Object x_frame_get_arg (struct frame *, Lisp_Object,
-                                    Lisp_Object, const char *, const char *,
-                                    enum resource_types);
 extern Lisp_Object x_frame_get_and_record_arg (struct frame *, Lisp_Object,
                                                Lisp_Object,
 					       const char *, const char *,
--- a/src/dispnew.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/dispnew.c	Mon Dec 27 18:29:38 2010 +0100
@@ -121,6 +121,8 @@
 static void update_frame_line (struct frame *, int);
 static struct dim allocate_matrices_for_frame_redisplay
      (Lisp_Object, int, int, int, int *);
+static int required_matrix_height (struct window *);
+static int required_matrix_width (struct window *);
 static void allocate_matrices_for_window_redisplay (struct window *);
 static int realloc_glyph_pool (struct glyph_pool *, struct dim);
 static void adjust_frame_glyphs (struct frame *);
@@ -167,14 +169,8 @@
 static int update_window (struct window *, int);
 static int update_frame_1 (struct frame *, int, int);
 static void set_window_cursor_after_update (struct window *);
-static int row_equal_p (struct window *, struct glyph_row *,
-                        struct glyph_row *, int);
 static void adjust_frame_glyphs_for_window_redisplay (struct frame *);
 static void adjust_frame_glyphs_for_frame_redisplay (struct frame *);
-static void reverse_rows (struct glyph_matrix *, int, int);
-static int margin_glyphs_to_reserve (struct window *, int, Lisp_Object);
-static void sync_window_with_frame_matrix_rows (struct window *);
-struct window *frame_row_to_window (struct window *, int);
 
 
 /* Non-zero means don't pause redisplay for pending input.  (This is
@@ -1296,7 +1292,7 @@
 
 /* Return a hash code for glyph row ROW.  */
 
-int
+static int
 line_hash_code (struct glyph_row *row)
 {
   int hash = 0;
@@ -1882,7 +1878,7 @@
 
 /* Return the required height of glyph matrices for window W.  */
 
-int
+static int
 required_matrix_height (struct window *w)
 {
 #ifdef HAVE_WINDOW_SYSTEM
@@ -1908,7 +1904,7 @@
 
 /* Return the required width of glyph matrices for window W.  */
 
-int
+static int
 required_matrix_width (struct window *w)
 {
 #ifdef HAVE_WINDOW_SYSTEM
--- a/src/eval.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/eval.c	Mon Dec 27 18:29:38 2010 +0100
@@ -167,6 +167,8 @@
 
 static Lisp_Object funcall_lambda (Lisp_Object, int, Lisp_Object*);
 static void unwind_to_catch (struct catchtag *, Lisp_Object) NO_RETURN;
+static int interactive_p (int);
+static Lisp_Object apply_lambda (Lisp_Object, Lisp_Object, int);
 
 void
 init_eval_once (void)
@@ -581,7 +583,7 @@
     EXCLUDE_SUBRS_P non-zero means always return 0 if the function
     called is a built-in.  */
 
-int
+static int
 interactive_p (int exclude_subrs_p)
 {
   struct backtrace *btp;
@@ -2685,53 +2687,6 @@
     }
 }
 
-/* Run a hook symbol ARGS[0], but use FUNLIST instead of the actual
-   present value of that symbol.
-   Call each element of FUNLIST,
-   passing each of them the rest of ARGS.
-   The caller (or its caller, etc) must gcpro all of ARGS,
-   except that it isn't necessary to gcpro ARGS[0].  */
-
-Lisp_Object
-run_hook_list_with_args (Lisp_Object funlist, int nargs, Lisp_Object *args)
-{
-  Lisp_Object sym;
-  Lisp_Object val;
-  Lisp_Object globals;
-  struct gcpro gcpro1, gcpro2, gcpro3;
-
-  sym = args[0];
-  globals = Qnil;
-  GCPRO3 (sym, val, globals);
-
-  for (val = funlist; CONSP (val); val = XCDR (val))
-    {
-      if (EQ (XCAR (val), Qt))
-	{
-	  /* t indicates this hook has a local binding;
-	     it means to run the global binding too.  */
-
-	  for (globals = Fdefault_value (sym);
-	       CONSP (globals);
-	       globals = XCDR (globals))
-	    {
-	      args[0] = XCAR (globals);
-	      /* In a global value, t should not occur.  If it does, we
-		 must ignore it to avoid an endless loop.  */
-	      if (!EQ (args[0], Qt))
-		Ffuncall (nargs, args);
-	    }
-	}
-      else
-	{
-	  args[0] = XCAR (val);
-	  Ffuncall (nargs, args);
-	}
-    }
-  UNGCPRO;
-  return Qnil;
-}
-
 /* Run the hook HOOK, giving each function the two args ARG1 and ARG2.  */
 
 void
@@ -3063,7 +3018,7 @@
   return val;
 }
 
-Lisp_Object
+static Lisp_Object
 apply_lambda (Lisp_Object fun, Lisp_Object args, int eval_flag)
 {
   Lisp_Object args_left;
--- a/src/fns.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/fns.c	Mon Dec 27 18:29:38 2010 +0100
@@ -872,7 +872,7 @@
 
 /* Convert STRING to a multibyte string.  */
 
-Lisp_Object
+static Lisp_Object
 string_make_multibyte (Lisp_Object string)
 {
   unsigned char *buf;
@@ -3701,7 +3701,7 @@
 /* Return a copy of hash table H1.  Keys and values are not copied,
    only the table itself is.  */
 
-Lisp_Object
+static Lisp_Object
 copy_hash_table (struct Lisp_Hash_Table *h1)
 {
   Lisp_Object table;
@@ -3909,7 +3909,7 @@
 
 /* Clear hash table H.  */
 
-void
+static void
 hash_clear (struct Lisp_Hash_Table *h)
 {
   if (h->count > 0)
--- a/src/font.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/font.c	Mon Dec 27 18:29:38 2010 +0100
@@ -123,7 +123,8 @@
   { 200, { "ultra-expanded", "ultraexpanded", "wide" }}
 };
 
-Lisp_Object QCfoundry, QCadstyle, QCregistry;
+Lisp_Object QCfoundry;
+static Lisp_Object QCadstyle, QCregistry;
 /* Symbols representing keys of font extra info.  */
 Lisp_Object QCspacing, QCdpi, QCscalable, QCotf, QClang, QCscript, QCavgwidth;
 Lisp_Object QCantialias, QCfont_entity, QCfc_unknown_spec;
@@ -164,7 +165,7 @@
 
 /* Creaters of font-related Lisp object.  */
 
-Lisp_Object
+static Lisp_Object
 font_make_spec (void)
 {
   Lisp_Object font_spec;
@@ -220,6 +221,7 @@
 static Lisp_Object font_open_entity (FRAME_PTR, Lisp_Object, int);
 static Lisp_Object font_matching_entity (FRAME_PTR, Lisp_Object *,
                                          Lisp_Object);
+static unsigned font_encode_char (Lisp_Object, int);
 
 /* Number of registered font drivers.  */
 static int num_font_drivers;
@@ -1305,7 +1307,7 @@
 
    This function tries to guess which format it is.  */
 
-int
+static int
 font_parse_fcname (char *name, Lisp_Object font)
 {
   char *p, *q;
@@ -1676,90 +1678,6 @@
   return (p - name);
 }
 
-/* Store GTK-style font name of FONT (font-spec or font-entity) in
-   NAME (NBYTES length), and return the name length.  F is the frame
-   on which the font is displayed; it is used to calculate the point
-   size.  */
-
-int
-font_unparse_gtkname (Lisp_Object font, struct frame *f, char *name, int nbytes)
-{
-  char *p;
-  int len = 1;
-  Lisp_Object family, weight, slant, size;
-  int point_size = -1;
-
-  family = AREF (font, FONT_FAMILY_INDEX);
-  if (! NILP (family))
-    {
-      if (! SYMBOLP (family))
-	return -1;
-      family = SYMBOL_NAME (family);
-      len += SBYTES (family);
-    }
-
-  weight = font_style_symbolic (font, FONT_WEIGHT_INDEX, 0);
-  if (EQ (weight, Qnormal))
-    weight = Qnil;
-  else if (! NILP (weight))
-    {
-      weight = SYMBOL_NAME (weight);
-      len += SBYTES (weight);
-    }
-
-  slant = font_style_symbolic (font, FONT_SLANT_INDEX, 0);
-  if (EQ (slant, Qnormal))
-    slant = Qnil;
-  else if (! NILP (slant))
-    {
-      slant = SYMBOL_NAME (slant);
-      len += SBYTES (slant);
-    }
-
-  size = AREF (font, FONT_SIZE_INDEX);
-  /* Convert pixel size to point size.  */
-  if (INTEGERP (size))
-    {
-      Lisp_Object font_dpi = AREF (font, FONT_DPI_INDEX);
-      int dpi = 75;
-      if (INTEGERP (font_dpi))
-	dpi = XINT (font_dpi);
-      else if (f)
-	dpi = f->resy;
-      point_size = PIXEL_TO_POINT (XINT (size), dpi);
-      len += 11;
-    }
-  else if (FLOATP (size))
-    {
-      point_size = (int) XFLOAT_DATA (size);
-      len += 11;
-    }
-
-  if (len > nbytes)
-    return -1;
-
-  p = name + sprintf (name, "%s", SDATA (family));
-
-  if (! NILP (weight))
-    {
-      char *q = p;
-      p += sprintf (p, " %s", SDATA (weight));
-      q[1] = toupper (q[1]);
-    }
-
-  if (! NILP (slant))
-    {
-      char *q = p;
-      p += sprintf (p, " %s", SDATA (slant));
-      q[1] = toupper (q[1]);
-    }
-
-  if (point_size > 0)
-    p += sprintf (p, " %d", point_size);
-
-  return (p - name);
-}
-
 /* Parse NAME (null terminated) and store information in FONT
    (font-spec or font-entity).  If NAME is successfully parsed, return
    0.  Otherwise return -1.  */
@@ -3039,7 +2957,7 @@
 
 /* Return the glyph ID of FONT_OBJECT for character C.  */
 
-unsigned
+static unsigned
 font_encode_char (Lisp_Object font_object, int c)
 {
   struct font *font;
@@ -3144,50 +3062,6 @@
   attrs[LFACE_FONT_INDEX] = font;
 }
 
-void
-font_update_lface (FRAME_PTR f, Lisp_Object *attrs)
-{
-  Lisp_Object spec;
-
-  spec = attrs[LFACE_FONT_INDEX];
-  if (! FONT_SPEC_P (spec))
-    return;
-
-  if (! NILP (AREF (spec, FONT_FOUNDRY_INDEX)))
-    attrs[LFACE_FOUNDRY_INDEX] = SYMBOL_NAME (AREF (spec, FONT_FOUNDRY_INDEX));
-  if (! NILP (AREF (spec, FONT_FAMILY_INDEX)))
-    attrs[LFACE_FAMILY_INDEX] = SYMBOL_NAME (AREF (spec, FONT_FAMILY_INDEX));
-  if (! NILP (AREF (spec, FONT_WEIGHT_INDEX)))
-    attrs[LFACE_WEIGHT_INDEX] = FONT_WEIGHT_FOR_FACE (spec);
-  if (! NILP (AREF (spec, FONT_SLANT_INDEX)))
-    attrs[LFACE_SLANT_INDEX] = FONT_SLANT_FOR_FACE (spec);
-  if (! NILP (AREF (spec, FONT_WIDTH_INDEX)))
-    attrs[LFACE_SWIDTH_INDEX] = FONT_WIDTH_FOR_FACE (spec);
-  if (! NILP (AREF (spec, FONT_SIZE_INDEX)))
-    {
-      int point;
-
-      if (INTEGERP (AREF (spec, FONT_SIZE_INDEX)))
-	{
-	  Lisp_Object val;
-	  int dpi = f->resy;
-
-	  val = Ffont_get (spec, QCdpi);
-	  if (! NILP (val))
-	    dpi = XINT (val);
-	  point = PIXEL_TO_POINT (XINT (AREF (spec, FONT_SIZE_INDEX)) * 10,
-				  dpi);
-	  attrs[LFACE_HEIGHT_INDEX] = make_number (point);
-	}
-      else if (FLOATP (AREF (spec, FONT_SIZE_INDEX)))
-	{
-	  point = XFLOAT_DATA (AREF (spec, FONT_SIZE_INDEX)) * 10;
-	  attrs[LFACE_HEIGHT_INDEX] = make_number (point);
-	}
-    }
-}
-
-
 /* Selecte a font from ENTITIES (list of font-entity vectors) that
    supports C and matches best with ATTRS and PIXEL_SIZE.  */
 
@@ -3781,8 +3655,9 @@
    at index POS.  If C is negative, get C from the current buffer or
    STRING.  */
 
-Lisp_Object
-font_at (int c, EMACS_INT pos, struct face *face, struct window *w, Lisp_Object string)
+static Lisp_Object
+font_at (int c, EMACS_INT pos, struct face *face, struct window *w,
+	 Lisp_Object string)
 {
   FRAME_PTR f;
   int multibyte;
--- a/src/font.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/font.h	Mon Dec 27 18:29:38 2010 +0100
@@ -742,11 +742,8 @@
 EXFUN (Ffont_get, 2);
 EXFUN (Ffont_put, 3);
 EXFUN (Flist_fonts, 4);
-EXFUN (Ffont_family_list, 1);
-EXFUN (Fclear_font_cache, 0);
 EXFUN (Ffont_xlfd_name, 2);
 
-extern Lisp_Object font_make_spec (void);
 extern Lisp_Object font_make_entity (void);
 extern Lisp_Object font_make_object (int, Lisp_Object, int);
 
@@ -767,11 +764,9 @@
 extern Lisp_Object font_spec_from_name (Lisp_Object font_name);
 extern Lisp_Object font_get_frame (Lisp_Object font_object);
 extern int font_has_char (FRAME_PTR, Lisp_Object, int);
-extern unsigned font_encode_char (Lisp_Object, int);
 
 extern void font_clear_prop (Lisp_Object *attrs,
                              enum font_property_index prop);
-extern void font_update_lface (FRAME_PTR f, Lisp_Object *attrs);
 extern Lisp_Object font_find_for_lface (FRAME_PTR f, Lisp_Object *lface,
                                         Lisp_Object spec, int c);
 extern Lisp_Object font_open_for_lface (FRAME_PTR f, Lisp_Object entity,
@@ -792,21 +787,15 @@
 extern void font_parse_family_registry (Lisp_Object family,
                                         Lisp_Object registry,
                                         Lisp_Object spec);
-extern Lisp_Object font_spec_from_family_registry (Lisp_Object family,
-                                                   Lisp_Object registry);
 
 extern int font_parse_xlfd (char *name, Lisp_Object font);
 extern int font_unparse_xlfd (Lisp_Object font, int pixel_size,
                               char *name, int bytes);
-extern int font_parse_fcname (char *name, Lisp_Object font);
 extern int font_unparse_fcname (Lisp_Object font, int pixel_size,
                                 char *name, int bytes);
-extern int font_unparse_gtkname (Lisp_Object, struct frame *, char *, int);
 extern void register_font_driver (struct font_driver *driver, FRAME_PTR f);
 extern void free_font_driver_list (FRAME_PTR f);
 extern Lisp_Object font_update_drivers (FRAME_PTR f, Lisp_Object list);
-extern Lisp_Object font_at (int c, EMACS_INT pos, struct face *face,
-                            struct window *w, Lisp_Object object);
 extern Lisp_Object font_range (EMACS_INT, EMACS_INT *,
 			       struct window *, struct face *,
 			       Lisp_Object);
@@ -858,7 +847,7 @@
 #define FONT_DEBUG
 #endif
 
-extern Lisp_Object QCfoundry, QCadstyle, QCregistry;
+extern Lisp_Object QCfoundry;
 
 extern Lisp_Object Vfont_log;
 extern void font_add_log (const char *, Lisp_Object, Lisp_Object);
--- a/src/fontset.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/fontset.c	Mon Dec 27 18:29:38 2010 +0100
@@ -64,8 +64,6 @@
 #define xassert(X)	(void) 0
 #endif	/* not FONTSET_DEBUG */
 
-EXFUN (Fclear_face_cache, 1);
-
 /* FONTSET
 
    A fontset is a collection of font related information to give
@@ -216,8 +214,6 @@
 static Lisp_Object fontset_pattern_regexp (Lisp_Object);
 static void accumulate_script_ranges (Lisp_Object, Lisp_Object,
                                       Lisp_Object);
-Lisp_Object find_font_encoding (Lisp_Object);
-
 static void set_fontset_font (Lisp_Object, Lisp_Object);
 
 #ifdef FONTSET_DEBUG
--- a/src/fontset.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/fontset.h	Mon Dec 27 18:29:38 2010 +0100
@@ -33,7 +33,6 @@
 struct face;
 
 extern void free_face_fontset (FRAME_PTR, struct face *);
-extern Lisp_Object fontset_font_pattern (FRAME_PTR, struct face *, int);
 extern int face_suitable_for_char_p (struct face *, int);
 extern int face_for_char (FRAME_PTR, struct face *, int,
                           int, Lisp_Object);
@@ -44,7 +43,6 @@
 extern int fs_query_fontset (Lisp_Object, int);
 EXFUN (Fquery_fontset, 2);
 extern Lisp_Object list_fontsets (struct frame *, Lisp_Object, int);
-extern Lisp_Object find_font_encoding (Lisp_Object);
 
 extern Lisp_Object Qlatin;
 extern Lisp_Object Vuse_default_ascent;
@@ -56,7 +54,6 @@
 
 extern Lisp_Object fontset_name (int);
 extern Lisp_Object fontset_ascii (int);
-extern int fontset_height (int);
 
 struct font;
 extern int face_for_font (struct frame *, Lisp_Object, struct face *);
--- a/src/frame.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/frame.c	Mon Dec 27 18:29:38 2010 +0100
@@ -3982,7 +3982,7 @@
   return Fcdr (tem);
 }
 
-Lisp_Object
+static Lisp_Object
 x_frame_get_arg (struct frame *f, Lisp_Object alist, Lisp_Object param,
 		 const char *attribute, const char *class,
 		 enum resource_types type)
--- a/src/intervals.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/intervals.h	Mon Dec 27 18:29:38 2010 +0100
@@ -283,6 +283,7 @@
 extern void set_intervals_multibyte (int);
 extern INTERVAL validate_interval_range (Lisp_Object, Lisp_Object *,
                                          Lisp_Object *, int);
+extern INTERVAL interval_of (int, Lisp_Object);
 
 /* Defined in xdisp.c */
 extern int invisible_p (Lisp_Object, Lisp_Object);
@@ -312,7 +313,6 @@
 extern Lisp_Object Qfront_sticky, Qrear_nonsticky;
 
 EXFUN (Fget_char_property, 3);
-EXFUN (Fget_char_property_and_overlay, 3);
 EXFUN (Fget_text_property, 3);
 EXFUN (Ftext_properties_at, 2);
 EXFUN (Fnext_property_change, 3);
@@ -321,7 +321,6 @@
 EXFUN (Fset_text_properties, 4);
 EXFUN (Fremove_text_properties, 4);
 EXFUN (Ftext_property_any, 5);
-EXFUN (Ftext_property_not_all, 5);
 EXFUN (Fprevious_single_char_property_change, 4);
 extern Lisp_Object copy_text_properties (Lisp_Object, Lisp_Object,
                                          Lisp_Object, Lisp_Object,
--- a/src/keymap.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/keymap.c	Mon Dec 27 18:29:38 2010 +0100
@@ -122,6 +122,7 @@
                              Lisp_Object, Lisp_Object, int *,
                              int, int, int);
 static void silly_event_symbol_error (Lisp_Object);
+static Lisp_Object get_keyelt (Lisp_Object, int);
 
 /* Keymap object support - constructors and predicates.			*/
 
@@ -758,7 +759,7 @@
 
    This can GC because menu_item_eval_property calls Feval.  */
 
-Lisp_Object
+static Lisp_Object
 get_keyelt (Lisp_Object object, int autoload)
 {
   while (1)
--- a/src/keymap.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/keymap.h	Mon Dec 27 18:29:38 2010 +0100
@@ -39,7 +39,6 @@
 EXFUN (Fwhere_is_internal, 5);
 EXFUN (Fcurrent_active_maps, 2);
 extern Lisp_Object access_keymap (Lisp_Object, Lisp_Object, int, int, int);
-extern Lisp_Object get_keyelt (Lisp_Object, int);
 extern Lisp_Object get_keymap (Lisp_Object, int, int);
 EXFUN (Fset_keymap_parent, 2);
 extern void describe_map_tree (Lisp_Object, int, Lisp_Object, Lisp_Object,
--- a/src/lisp.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/lisp.h	Mon Dec 27 18:29:38 2010 +0100
@@ -2317,29 +2317,7 @@
 /* Defined in frame.c */
 extern Lisp_Object Qframep;
 
-EXFUN (Feq, 2);
-EXFUN (Fnull, 1);
-EXFUN (Flistp, 1);
-EXFUN (Fconsp, 1);
-EXFUN (Fatom, 1);
-EXFUN (Fnlistp, 1);
-EXFUN (Fintegerp, 1);
-EXFUN (Fnatnump, 1);
-EXFUN (Fsymbolp, 1);
-EXFUN (Fvectorp, 1);
-EXFUN (Fstringp, 1);
-EXFUN (Fmultibyte_string_p, 1);
-EXFUN (Farrayp, 1);
-EXFUN (Fsequencep, 1);
-EXFUN (Fbufferp, 1);
-EXFUN (Fmarkerp, 1);
-EXFUN (Fsubrp, 1);
-EXFUN (Fchar_or_string_p, 1);
-EXFUN (Finteger_or_marker_p, 1);
-EXFUN (Ffloatp, 1);
-EXFUN (Finteger_or_floatp, 1);
-EXFUN (Finteger_or_float_or_marker_p, 1);
-
+/* Defined in data.c */
 EXFUN (Fcar, 1);
 EXFUN (Fcar_safe, 1);
 EXFUN (Fcdr, 1);
@@ -2348,15 +2326,11 @@
 EXFUN (Fsetcdr, 2);
 EXFUN (Fboundp, 1);
 EXFUN (Ffboundp, 1);
-EXFUN (Fmakunbound, 1);
-EXFUN (Ffmakunbound, 1);
 EXFUN (Fsymbol_function, 1);
-EXFUN (Fsymbol_plist, 1);
 EXFUN (Fsymbol_name, 1);
 extern Lisp_Object indirect_function (Lisp_Object);
 EXFUN (Findirect_function, 2);
 EXFUN (Ffset, 2);
-EXFUN (Fsetplist, 2);
 EXFUN (Fsymbol_value, 1);
 extern Lisp_Object find_symbol_value (Lisp_Object);
 EXFUN (Fset, 2);
@@ -2365,19 +2339,16 @@
 EXFUN (Fdefault_boundp, 1);
 EXFUN (Fmake_local_variable, 1);
 EXFUN (Flocal_variable_p, 2);
-EXFUN (Flocal_variable_if_set_p, 2);
 
 EXFUN (Faref, 2);
 EXFUN (Faset, 3);
 
 EXFUN (Fstring_to_number, 2);
 EXFUN (Fnumber_to_string, 1);
-EXFUN (Feqlsign, 2);
 EXFUN (Fgtr, 2);
 EXFUN (Flss, 2);
 EXFUN (Fgeq, 2);
 EXFUN (Fleq, 2);
-EXFUN (Fneq, 2);
 EXFUN (Fzerop, 1);
 EXFUN (Fplus, MANY);
 EXFUN (Fminus, MANY);
@@ -2386,12 +2357,6 @@
 EXFUN (Frem, 2);
 EXFUN (Fmax, MANY);
 EXFUN (Fmin, MANY);
-EXFUN (Flogand, MANY);
-EXFUN (Flogior, MANY);
-EXFUN (Flogxor, MANY);
-EXFUN (Flognot, 1);
-EXFUN (Flsh, 2);
-EXFUN (Fash, 2);
 
 EXFUN (Fadd1, 1);
 EXFUN (Fsub1, 1);
@@ -2418,6 +2383,7 @@
 extern void keys_of_cmds (void);
 
 /* Defined in coding.c */
+extern Lisp_Object Qcharset;
 EXFUN (Fcoding_system_p, 1);
 EXFUN (Fcoding_system_base, 1);
 EXFUN (Fcoding_system_eol_type, 1);
@@ -2425,8 +2391,6 @@
 EXFUN (Fread_coding_system, 2);
 EXFUN (Fread_non_nil_coding_system, 1);
 EXFUN (Ffind_operation_coding_system, MANY);
-EXFUN (Fupdate_coding_systems_internal, 0);
-EXFUN (Fencode_coding_string, 4);
 EXFUN (Fdecode_coding_string, 4);
 extern Lisp_Object detect_coding_system (const unsigned char *, EMACS_INT,
                                          EMACS_INT, int, int, Lisp_Object);
@@ -2435,19 +2399,17 @@
 extern void syms_of_coding (void);
 
 /* Defined in character.c */
-extern void init_character_once (void);
-extern void syms_of_character (void);
 EXFUN (Funibyte_char_to_multibyte, 1);
-
-/* Defined in charset.c */
-EXFUN (Fchar_bytes, 1);
 EXFUN (Fchar_width, 1);
 EXFUN (Fstring, MANY);
 extern EMACS_INT chars_in_text (const unsigned char *, EMACS_INT);
 extern EMACS_INT multibyte_chars_in_text (const unsigned char *, EMACS_INT);
 extern int multibyte_char_to_unibyte (int, Lisp_Object);
 extern int multibyte_char_to_unibyte_safe (int);
-extern Lisp_Object Qcharset;
+extern void init_character_once (void);
+extern void syms_of_character (void);
+
+/* Defined in charset.c */
 extern void init_charset (void);
 extern void init_charset_once (void);
 extern void syms_of_charset (void);
@@ -2462,8 +2424,6 @@
 EXFUN (Fskip_chars_forward, 2);
 EXFUN (Fskip_chars_backward, 2);
 EXFUN (Fsyntax_table_p, 1);
-EXFUN (Fsyntax_table, 0);
-EXFUN (Fset_syntax_table, 1);
 extern void init_syntax_once (void);
 extern void syms_of_syntax (void);
 
@@ -2482,35 +2442,18 @@
 Lisp_Object make_hash_table (Lisp_Object, Lisp_Object, Lisp_Object,
                              Lisp_Object, Lisp_Object, Lisp_Object,
                              Lisp_Object);
-Lisp_Object copy_hash_table (struct Lisp_Hash_Table *);
 int hash_lookup (struct Lisp_Hash_Table *, Lisp_Object, unsigned *);
 int hash_put (struct Lisp_Hash_Table *, Lisp_Object, Lisp_Object,
               unsigned);
-void hash_clear (struct Lisp_Hash_Table *);
 void init_weak_hash_tables (void);
 extern void init_fns (void);
-EXFUN (Fsxhash, 1);
 EXFUN (Fmake_hash_table, MANY);
-EXFUN (Fmakehash, 1);
-EXFUN (Fcopy_hash_table, 1);
-EXFUN (Fhash_table_count, 1);
-EXFUN (Fhash_table_rehash_size, 1);
-EXFUN (Fhash_table_rehash_threshold, 1);
-EXFUN (Fhash_table_size, 1);
-EXFUN (Fhash_table_test, 1);
-EXFUN (Fhash_table_weak, 1);
-EXFUN (Fhash_table_p, 1);
-EXFUN (Fclrhash, 1);
 EXFUN (Fgethash, 3);
 EXFUN (Fputhash, 3);
 EXFUN (Fremhash, 2);
-EXFUN (Fmaphash, 2);
-EXFUN (Fdefine_hash_table_test, 3);
 
 EXFUN (Fidentity, 1);
-EXFUN (Frandom, 1);
 EXFUN (Flength, 1);
-EXFUN (Fsafe_length, 1);
 EXFUN (Fappend, MANY);
 EXFUN (Fconcat, MANY);
 EXFUN (Fvconcat, MANY);
@@ -2520,7 +2463,6 @@
 EXFUN (Fstring_as_multibyte, 1);
 EXFUN (Fstring_as_unibyte, 1);
 EXFUN (Fstring_to_multibyte, 1);
-EXFUN (Fstring_to_unibyte, 1);
 EXFUN (Fsubstring, 3);
 extern Lisp_Object substring_both (Lisp_Object, EMACS_INT, EMACS_INT,
 				   EMACS_INT, EMACS_INT);
@@ -2540,12 +2482,10 @@
 EXFUN (Fget, 2);
 EXFUN (Fput, 3);
 EXFUN (Fequal, 2);
-EXFUN (Ffillarray, 2);
 EXFUN (Fnconc, MANY);
 EXFUN (Fmapcar, 2);
 EXFUN (Fmapconcat, 3);
 extern Lisp_Object do_yes_or_no_p (Lisp_Object);
-EXFUN (Frequire, 3);
 EXFUN (Fprovide, 2);
 extern Lisp_Object concat2 (Lisp_Object, Lisp_Object);
 extern Lisp_Object concat3 (Lisp_Object, Lisp_Object, Lisp_Object);
@@ -2555,7 +2495,6 @@
 extern void clear_string_char_byte_cache (void);
 extern EMACS_INT string_char_to_byte (Lisp_Object, EMACS_INT);
 extern EMACS_INT string_byte_to_char (Lisp_Object, EMACS_INT);
-extern Lisp_Object string_make_multibyte (Lisp_Object);
 extern Lisp_Object string_to_multibyte (Lisp_Object);
 extern Lisp_Object string_make_unibyte (Lisp_Object);
 EXFUN (Fcopy_alist, 1);
@@ -2586,6 +2525,7 @@
 extern Lisp_Object QCconversion, QCcolor_symbols, QCheuristic_mask;
 extern Lisp_Object QCindex, QCmatrix, QCcolor_adjustment, QCmask;
 EXFUN (Finit_image_library, 2);
+extern int x_bitmap_mask (struct frame *, int);
 extern void syms_of_image (void);
 extern void init_image (void);
 
@@ -2647,7 +2587,6 @@
 extern EMACS_INT baud_rate;
 EXFUN (Fding, 1);
 EXFUN (Fredraw_frame, 1);
-EXFUN (Fredraw_display, 0);
 EXFUN (Fsleep_for, 2);
 EXFUN (Fredisplay, 1);
 extern Lisp_Object sit_for (Lisp_Object, int, int);
@@ -2738,11 +2677,12 @@
 extern Lisp_Object Vmemory_full;
 extern Lisp_Object *stack_base;
 EXFUN (Fcons, 2);
-EXFUN (list1, 1);
-EXFUN (list2, 2);
-EXFUN (list3, 3);
-EXFUN (list4, 4);
-EXFUN (list5, 5);
+extern Lisp_Object list1 (Lisp_Object);
+extern Lisp_Object list2 (Lisp_Object, Lisp_Object);
+extern Lisp_Object list3 (Lisp_Object, Lisp_Object, Lisp_Object);
+extern Lisp_Object list4 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object);
+extern Lisp_Object list5 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object,
+			  Lisp_Object);
 EXFUN (Flist, MANY);
 EXFUN (Fmake_list, 2);
 extern Lisp_Object allocate_misc (void);
@@ -2798,17 +2738,12 @@
 
 /* Defined in chartab.c */
 EXFUN (Fmake_char_table, 2);
-EXFUN (Fchar_table_parent, 1);
 EXFUN (Fset_char_table_parent, 2);
 EXFUN (Fchar_table_extra_slot, 2);
 EXFUN (Fset_char_table_extra_slot, 3);
-EXFUN (Fchar_table_range, 2);
 EXFUN (Fset_char_table_range, 3);
-EXFUN (Fset_char_table_default, 3);
 EXFUN (Foptimize_char_table, 2);
-EXFUN (Fmap_char_table, 2);
 extern Lisp_Object copy_char_table (Lisp_Object);
-extern Lisp_Object sub_char_table_ref (Lisp_Object, int);
 extern Lisp_Object char_table_ref (Lisp_Object, int);
 extern Lisp_Object char_table_ref_and_range (Lisp_Object, int,
                                              int *, int *);
@@ -2842,7 +2777,6 @@
 extern int print_level, print_escape_newlines;
 extern Lisp_Object Qprint_escape_newlines;
 extern void write_string (const char *, int);
-extern void write_string_1 (const char *, int, Lisp_Object);
 extern void print_error_message (Lisp_Object, Lisp_Object, const char *,
 				 Lisp_Object);
 extern Lisp_Object internal_with_output_to_temp_buffer
@@ -2865,10 +2799,8 @@
 EXFUN (Fintern_soft, 2);
 EXFUN (Fload, 5);
 EXFUN (Fget_load_suffixes, 0);
-EXFUN (Fget_file_char, 0);
 EXFUN (Fread_char, 3);
 EXFUN (Fread_event, 3);
-extern Lisp_Object read_filtered_event (int, int, int, int, Lisp_Object);
 EXFUN (Feval_region, 4);
 extern Lisp_Object check_obarray (Lisp_Object);
 extern Lisp_Object intern (const char *);
@@ -2900,7 +2832,6 @@
 extern Lisp_Object Vsignaling_function;
 extern int handling_signal;
 extern int debug_on_next_call;
-extern int interactive_p (int);
 
 /* To run a normal hook, use the appropriate function from the list below.
    The calling convention:
@@ -2912,28 +2843,11 @@
 extern Lisp_Object Vrun_hooks;
 EXFUN (Frun_hooks, MANY);
 EXFUN (Frun_hook_with_args, MANY);
-EXFUN (Frun_hook_with_args_until_success, MANY);
 EXFUN (Frun_hook_with_args_until_failure, MANY);
-extern Lisp_Object run_hook_list_with_args (Lisp_Object, int, Lisp_Object *);
 extern void run_hook_with_args_2 (Lisp_Object, Lisp_Object, Lisp_Object);
-EXFUN (Fand, UNEVALLED);
-EXFUN (For, UNEVALLED);
-EXFUN (Fif, UNEVALLED);
 EXFUN (Fprogn, UNEVALLED);
-EXFUN (Fprog1, UNEVALLED);
-EXFUN (Fprog2, UNEVALLED);
-EXFUN (Fsetq, UNEVALLED);
-EXFUN (Fquote, UNEVALLED);
-EXFUN (Fuser_variable_p, 1);
 EXFUN (Finteractive_p, 0);
-EXFUN (Fdefun, UNEVALLED);
-EXFUN (Flet, UNEVALLED);
-EXFUN (FletX, UNEVALLED);
-EXFUN (Fwhile, UNEVALLED);
-EXFUN (Fcatch, UNEVALLED);
 EXFUN (Fthrow, 2) NO_RETURN;
-EXFUN (Funwind_protect, UNEVALLED);
-EXFUN (Fcondition_case, UNEVALLED);
 EXFUN (Fsignal, 2);
 extern void xsignal (Lisp_Object, Lisp_Object) NO_RETURN;
 extern void xsignal0 (Lisp_Object) NO_RETURN;
@@ -2941,7 +2855,6 @@
 extern void xsignal2 (Lisp_Object, Lisp_Object, Lisp_Object) NO_RETURN;
 extern void xsignal3 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object) NO_RETURN;
 extern void signal_error (const char *, Lisp_Object) NO_RETURN;
-EXFUN (Fautoload, 5);
 EXFUN (Fcommandp, 2);
 EXFUN (Feval, 1);
 EXFUN (Fapply, MANY);
@@ -2957,7 +2870,6 @@
 extern Lisp_Object call6 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object);
 extern Lisp_Object call7 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object);
 EXFUN (Fdo_auto_save, 2);
-extern Lisp_Object apply_lambda (Lisp_Object, Lisp_Object, int);
 extern Lisp_Object internal_catch (Lisp_Object, Lisp_Object (*) (Lisp_Object), Lisp_Object);
 extern Lisp_Object internal_lisp_condition_case (Lisp_Object, Lisp_Object, Lisp_Object);
 extern Lisp_Object internal_condition_case (Lisp_Object (*) (void), Lisp_Object, Lisp_Object (*) (Lisp_Object));
@@ -2985,25 +2897,17 @@
 extern Lisp_Object Vinhibit_field_text_motion;
 extern Lisp_Object Vsystem_name;
 extern Lisp_Object Vuser_login_name;
-EXFUN (Fpropertize, MANY);
 EXFUN (Fcurrent_message, 0);
 EXFUN (Fgoto_char, 1);
-EXFUN (Fpoint_min_marker, 0);
 EXFUN (Fpoint_max_marker, 0);
-EXFUN (Fpoint_min, 0);
-EXFUN (Fpoint_max, 0);
 EXFUN (Fpoint, 0);
 EXFUN (Fpoint_marker, 0);
-EXFUN (Fmark_marker, 0);
 EXFUN (Fline_beginning_position, 1);
 EXFUN (Fline_end_position, 1);
 EXFUN (Ffollowing_char, 0);
 EXFUN (Fprevious_char, 0);
 EXFUN (Fchar_after, 1);
 EXFUN (Finsert, MANY);
-EXFUN (Finsert_and_inherit, MANY);
-EXFUN (Finsert_before_markers, MANY);
-EXFUN (Finsert_buffer_substring, 3);
 EXFUN (Finsert_char, 3);
 extern void insert1 (Lisp_Object);
 EXFUN (Feolp, 0);
@@ -3033,11 +2937,7 @@
 extern void init_editfns (void);
 extern void syms_of_editfns (void);
 EXFUN (Fconstrain_to_field, 5);
-EXFUN (Ffield_string, 1);
-EXFUN (Fdelete_field, 1);
-EXFUN (Ffield_beginning, 3);
 EXFUN (Ffield_end, 3);
-EXFUN (Ffield_string_no_properties, 1);
 extern void set_time_zone_rule (const char *);
 
 /* Defined in buffer.c */
@@ -3046,7 +2946,6 @@
 EXFUN (Fset_buffer_multibyte, 1);
 EXFUN (Foverlay_start, 1);
 EXFUN (Foverlay_end, 1);
-EXFUN (Foverlay_buffer, 1);
 extern void adjust_overlays_for_insert (EMACS_INT, EMACS_INT);
 extern void adjust_overlays_for_delete (EMACS_INT, EMACS_INT);
 extern void fix_start_end_in_overlays (EMACS_INT, EMACS_INT);
@@ -3054,12 +2953,11 @@
                                          Lisp_Object, Lisp_Object, Lisp_Object);
 extern int overlay_touches_p (EMACS_INT);
 extern Lisp_Object Vbuffer_alist, Vinhibit_read_only;
-EXFUN (Fbuffer_list, 1);
 EXFUN (Fget_buffer, 1);
 EXFUN (Fget_buffer_create, 1);
 EXFUN (Fgenerate_new_buffer_name, 2);
 EXFUN (Fset_buffer, 1);
-EXFUN (set_buffer_if_live, 1);
+extern Lisp_Object set_buffer_if_live (Lisp_Object);
 EXFUN (Fbarf_if_buffer_read_only, 0);
 EXFUN (Fcurrent_buffer, 0);
 EXFUN (Fswitch_to_buffer, 2);
@@ -3069,7 +2967,6 @@
 EXFUN (Fset_buffer_modified_p, 1);
 EXFUN (Fkill_buffer, 1);
 EXFUN (Fkill_all_local_variables, 0);
-EXFUN (Fbuffer_disable_undo, 1);
 EXFUN (Fbuffer_enable_undo, 1);
 EXFUN (Ferase_buffer, 0);
 extern Lisp_Object Qoverlayp;
@@ -3111,7 +3008,6 @@
 extern Lisp_Object Vauto_save_list_file_name;
 EXFUN (Ffind_file_name_handler, 2);
 EXFUN (Ffile_name_as_directory, 1);
-EXFUN (Fmake_temp_name, 1);
 EXFUN (Fexpand_file_name, 2);
 EXFUN (Ffile_name_nondirectory, 1);
 EXFUN (Fsubstitute_in_file_name, 1);
@@ -3151,7 +3047,6 @@
 EXFUN (Fmatch_beginning, 1);
 EXFUN (Fmatch_end, 1);
 extern void record_unwind_save_match_data (void);
-EXFUN (Flooking_at, 1);
 extern int fast_string_match (Lisp_Object, Lisp_Object);
 extern int fast_c_string_match_ignore_case (Lisp_Object, const char *);
 extern int fast_string_match_ignore_case (Lisp_Object, Lisp_Object);
@@ -3185,10 +3080,8 @@
 EXFUN (Fread_minibuffer, 2);
 EXFUN (Feval_minibuffer, 2);
 EXFUN (Fread_string, 5);
-EXFUN (Fread_no_blanks_input, 3);
 EXFUN (Fassoc_string, 3);
 extern Lisp_Object get_minibuffer (int);
-extern void temp_echo_area_glyphs (Lisp_Object);
 extern void init_minibuf_once (void);
 extern void syms_of_minibuf (void);
 
@@ -3199,7 +3092,6 @@
 extern Lisp_Object Vcommand_history;
 extern Lisp_Object Vmark_even_if_inactive;
 extern Lisp_Object Qcall_interactively, Qmouse_leave_buffer_hook;
-EXFUN (Fcall_interactively, 3);
 EXFUN (Fprefix_numeric_value, 1);
 extern void syms_of_callint (void);
 
@@ -3208,7 +3100,6 @@
 extern Lisp_Object Qidentity;
 EXFUN (Fdowncase, 1);
 EXFUN (Fupcase, 1);
-EXFUN (Fcapitalize, 1);
 EXFUN (Fupcase_region, 2);
 EXFUN (Fupcase_initials, 1);
 EXFUN (Fupcase_initials_region, 2);
@@ -3240,10 +3131,7 @@
 EXFUN (Fdiscard_input, 0);
 EXFUN (Frecursive_edit, 0);
 EXFUN (Ftop_level, 0) NO_RETURN;
-EXFUN (Fexit_recursive_edit, 0) NO_RETURN;
-EXFUN (Fabort_recursive_edit, 0) NO_RETURN;
 EXFUN (Fcommand_execute, 4);
-EXFUN (Finput_pending_p, 0);
 extern Lisp_Object menu_bar_items (Lisp_Object);
 extern Lisp_Object tool_bar_items (Lisp_Object, int *);
 extern Lisp_Object Qvertical_scroll_bar;
@@ -3251,9 +3139,6 @@
 EXFUN (Fevent_convert_list, 1);
 EXFUN (Fread_key_sequence, 5);
 EXFUN (Fset_input_interrupt_mode, 1);
-EXFUN (Fset_output_flow_control, 2);
-EXFUN (Fset_input_meta_mode, 2);
-EXFUN (Fset_quit_char, 1);
 EXFUN (Fset_input_mode, 4);
 extern Lisp_Object pending_funcalls;
 extern int detect_input_pending (void);
@@ -3273,7 +3158,6 @@
 /* Defined in indent.c */
 EXFUN (Fvertical_motion, 2);
 EXFUN (Findent_to, 2);
-EXFUN (Fcurrent_column, 0);
 EXFUN (Fmove_to_column, 2);
 extern double current_column (void);
 extern void invalidate_current_column (void);
@@ -3292,36 +3176,21 @@
 extern Lisp_Object do_switch_frame (Lisp_Object, int, int, Lisp_Object);
 extern Lisp_Object get_frame_param (struct frame *, Lisp_Object);
 extern Lisp_Object frame_buffer_predicate (Lisp_Object);
-EXFUN (Fframep, 1);
 EXFUN (Fselect_frame, 2);
 EXFUN (Fselected_frame, 0);
 EXFUN (Fwindow_frame, 1);
 EXFUN (Fframe_root_window, 1);
 EXFUN (Fframe_first_window, 1);
-EXFUN (Fframe_selected_window, 1);
-EXFUN (Fframe_list, 0);
-EXFUN (Fnext_frame, 2);
-EXFUN (Fdelete_frame, 2);
-EXFUN (Fset_mouse_position, 3);
 EXFUN (Fmake_frame_visible, 1);
-EXFUN (Fmake_frame_invisible, 2);
 EXFUN (Ficonify_frame, 1);
-EXFUN (Fframe_visible_p, 1);
-EXFUN (Fvisible_frame_list, 0);
 EXFUN (Fframe_parameter, 2);
-EXFUN (Fframe_parameters, 1);
 EXFUN (Fmodify_frame_parameters, 2);
-EXFUN (Fset_frame_height, 3);
-EXFUN (Fset_frame_width, 3);
-EXFUN (Fset_frame_size, 3);
-EXFUN (Fset_frame_position, 3);
 EXFUN (Fraise_frame, 1);
 EXFUN (Fredirect_frame_focus, 2);
 EXFUN (Fset_frame_selected_window, 3);
 extern Lisp_Object frame_buffer_list (Lisp_Object);
 extern void frames_discard_buffer (Lisp_Object);
 extern void set_frame_buffer_list (Lisp_Object, Lisp_Object);
-extern void frames_bury_buffer (Lisp_Object);
 extern void syms_of_frame (void);
 
 /* Defined in emacs.c */
@@ -3370,10 +3239,8 @@
 extern Lisp_Object QCtype, Qlocal;
 EXFUN (Fget_process, 1);
 EXFUN (Fget_buffer_process, 1);
-EXFUN (Fprocessp, 1);
 EXFUN (Fprocess_status, 1);
 EXFUN (Fkill_process, 2);
-EXFUN (Fprocess_send_eof, 1);
 EXFUN (Fwaiting_for_user_input_p, 0);
 extern Lisp_Object Qprocessp;
 extern void kill_buffer_processes (Lisp_Object);
@@ -3406,7 +3273,6 @@
 extern Lisp_Object Qfunction_documentation;
 extern Lisp_Object Vdoc_file_name;
 EXFUN (Fsubstitute_command_keys, 1);
-EXFUN (Fdocumentation, 2);
 EXFUN (Fdocumentation_property, 3);
 extern Lisp_Object read_doc_string (Lisp_Object);
 extern Lisp_Object get_doc_string (Lisp_Object, int, int);
@@ -3458,10 +3324,6 @@
 EXFUN (Fprevious_char_property_change, 2);
 EXFUN (Fnext_char_property_change, 2);
 extern void report_interval_modification (Lisp_Object, Lisp_Object);
-extern Lisp_Object next_single_char_property_change (Lisp_Object,
-                                                     Lisp_Object,
-                                                     Lisp_Object,
-                                                     Lisp_Object);
 
 /* Defined in menu.c */
 extern void syms_of_menu (void);
@@ -3516,7 +3378,6 @@
 /* Defined in filelock.c */
 extern Lisp_Object Vtemporary_file_directory;
 EXFUN (Funlock_buffer, 0);
-EXFUN (Ffile_locked_p, 1);
 extern void unlock_all_files (void);
 extern void lock_file (Lisp_Object);
 extern void unlock_file (Lisp_Object);
@@ -3560,14 +3421,11 @@
 #ifdef HAVE_WINDOW_SYSTEM
 /* Defined in fontset.c */
 extern void syms_of_fontset (void);
-EXFUN (Fset_fontset_font, 5);
-EXFUN (Fnew_fontset, 2);
 
 /* Defined in xfns.c, w32fns.c, or macfns.c */
 extern Lisp_Object Qfont_param;
 extern Lisp_Object Vx_no_window_manager;
 EXFUN (Fxw_display_color_p, 1);
-EXFUN (Fx_file_dialog, 5);
 EXFUN (Fx_focus_frame, 1);
 #endif
 
--- a/src/lread.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/lread.c	Mon Dec 27 18:29:38 2010 +0100
@@ -650,7 +650,7 @@
    If SECONDS is a number, we wait that many seconds for input, and
    return Qnil if no input arrives within that time.  */
 
-Lisp_Object
+static Lisp_Object
 read_filtered_event (int no_switch_frame, int ascii_required,
 		     int error_nonascii, int input_method, Lisp_Object seconds)
 {
--- a/src/print.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/print.c	Mon Dec 27 18:29:38 2010 +0100
@@ -540,11 +540,11 @@
   PRINTFINISH;
 }
 
-/* Used from outside of print.c to print a block of SIZE
-   single-byte chars at DATA on a specified stream PRINTCHARFUN.
+/* Used to print a block of SIZE single-byte chars at DATA on a
+   specified stream PRINTCHARFUN.
    Do not use this on the contents of a Lisp string.  */
 
-void
+static void
 write_string_1 (const char *data, int size, Lisp_Object printcharfun)
 {
   PRINTDECLARE;
--- a/src/syntax.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/syntax.c	Mon Dec 27 18:29:38 2010 +0100
@@ -167,7 +167,6 @@
 
 struct gl_state_s gl_state;		/* Global state of syntax parser.  */
 
-INTERVAL interval_of (int, Lisp_Object);
 #define INTERVALS_AT_ONCE 10		/* 1 + max-number of intervals
 					   to scan to property-change.  */
 
--- a/src/syntax.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/syntax.h	Mon Dec 27 18:29:38 2010 +0100
@@ -299,7 +299,6 @@
 
 extern struct gl_state_s gl_state;
 extern int parse_sexp_lookup_properties;
-extern INTERVAL interval_of (int, Lisp_Object);
 
 extern EMACS_INT scan_words (EMACS_INT, EMACS_INT);
 
--- a/src/termhooks.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/termhooks.h	Mon Dec 27 18:29:38 2010 +0100
@@ -647,7 +647,6 @@
 /* Return true if the terminal device is not suspended. */
 #define TERMINAL_ACTIVE_P(d) (((d)->type != output_termcap && (d)->type !=output_msdos_raw) || (d)->display_info.tty->input)
 
-extern Lisp_Object get_terminal_param (struct terminal *, Lisp_Object);
 extern struct terminal *get_terminal (Lisp_Object terminal, int);
 extern struct terminal *create_terminal (void);
 extern void delete_terminal (struct terminal *);
--- a/src/terminal.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/terminal.c	Mon Dec 27 18:29:38 2010 +0100
@@ -429,16 +429,6 @@
 
 
 
-/* Return the value of terminal parameter PARAM in terminal T.  */
-Lisp_Object
-get_terminal_param (struct terminal *t, Lisp_Object param)
-{
-  Lisp_Object tem = Fassq (param, t->param_alist);
-  if (EQ (tem, Qnil))
-    return tem;
-  return Fcdr (tem);
-}
-
 /* Set the value of terminal parameter PARAMETER in terminal D to VALUE.
    Return the previous value.  */
 
--- a/src/window.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/window.c	Mon Dec 27 18:29:38 2010 +0100
@@ -78,6 +78,9 @@
                                 Lisp_Object, int);
 static void decode_next_window_args (Lisp_Object *, Lisp_Object *,
                                      Lisp_Object *);
+static void foreach_window (struct frame *,
+                            int (* fn) (struct window *, void *),
+                            void *);
 static int foreach_window_1 (struct window *,
                              int (* fn) (struct window *, void *),
                              void *);
@@ -1425,6 +1428,8 @@
   return table;
 }
 
+static void delete_window (Lisp_Object);
+
 /* Record info on buffer window w is displaying
    when it is about to cease to display that buffer.  */
 static void
@@ -1548,7 +1553,7 @@
   return Qnil;
 }
 
-void
+static void
 delete_window (register Lisp_Object window)
 {
   register Lisp_Object tem, parent, sib;
@@ -3958,14 +3963,14 @@
   return Qnil;
 }
 
-int
+static int
 window_height (Lisp_Object window)
 {
   register struct window *p = XWINDOW (window);
   return WINDOW_TOTAL_LINES (p);
 }
 
-int
+static int
 window_width (Lisp_Object window)
 {
   register struct window *p = XWINDOW (window);
@@ -6817,8 +6822,9 @@
    first argument being a pointer to the leaf window, and with
    additional argument USER_DATA.  Stops when FN returns 0.  */
 
-void
-foreach_window (struct frame *f, int (*fn) (struct window *, void *), void *user_data)
+static void
+foreach_window (struct frame *f, int (*fn) (struct window *, void *),
+		void *user_data)
 {
   /* delete_frame may set FRAME_ROOT_WINDOW (f) to Qnil.  */
   if (WINDOWP (FRAME_ROOT_WINDOW (f)))
--- a/src/window.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/window.h	Mon Dec 27 18:29:38 2010 +0100
@@ -778,29 +778,18 @@
 EXFUN (Fnext_window, 3);
 EXFUN (Fselect_window, 2);
 EXFUN (Fset_window_buffer, 3);
-EXFUN (Fset_window_hscroll, 2);
-EXFUN (Fwindow_hscroll, 1);
 EXFUN (Fset_window_vscroll, 3);
-EXFUN (Fwindow_vscroll, 2);
 EXFUN (Fset_window_margins, 3);
-EXFUN (Fwindow_live_p, 1);
 EXFUN (Fset_window_point, 2);
 extern Lisp_Object make_window (void);
-extern void delete_window (Lisp_Object);
 extern Lisp_Object window_from_coordinates (struct frame *, int, int,
                                             enum window_part *, int);
 EXFUN (Fwindow_dedicated_p, 1);
-extern int window_height (Lisp_Object);
-extern int window_width (Lisp_Object);
-EXFUN (Fwindow_full_width_p, 1);
 extern void set_window_height (Lisp_Object, int, int);
 extern void set_window_width (Lisp_Object, int, int);
 extern void change_window_heights (Lisp_Object, int);
 extern void delete_all_subwindows (struct window *);
 extern void freeze_window_starts (struct frame *, int);
-extern void foreach_window (struct frame *,
-                            int (* fn) (struct window *, void *),
-                            void *);
 extern void grow_mini_window (struct window *, int);
 extern void shrink_mini_window (struct window *);
 extern int window_relative_x_coord (struct window *, enum window_part, int);
@@ -881,26 +870,19 @@
 extern Lisp_Object Qwindowp, Qwindow_live_p;
 extern Lisp_Object Vwindow_list;
 
-EXFUN (Fwindow_end, 2);
 EXFUN (Fselected_window, 0);
 EXFUN (Fwindow_minibuffer_p, 1);
 EXFUN (Fdelete_window, 1);
 EXFUN (Fwindow_buffer, 1);
 EXFUN (Fget_buffer_window, 2);
 EXFUN (Fsave_window_excursion, UNEVALLED);
-EXFUN (Fsplit_window, 3);
 EXFUN (Fset_window_configuration, 1);
 EXFUN (Fcurrent_window_configuration, 1);
 extern int compare_window_configurations (Lisp_Object, Lisp_Object, int);
-EXFUN (Fcoordinates_in_window_p, 2);
-EXFUN (Fwindow_at, 3);
 EXFUN (Fpos_visible_in_window_p, 3);
 extern void mark_window_cursors_off (struct window *);
 extern int window_internal_height (struct window *);
-extern int window_internal_width (struct window *);
 EXFUN (Frecenter, 1);
-EXFUN (Fscroll_other_window, 1);
-EXFUN (Fset_window_start, 3);
 extern void temp_output_buffer_show (Lisp_Object);
 extern void replace_buffer_in_all_windows (Lisp_Object);
 extern void init_window_once (void);
--- a/src/xrdb.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/xrdb.c	Mon Dec 27 18:29:38 2010 +0100
@@ -76,8 +76,9 @@
 /* Return the value of the emacs.customization (Emacs.Customization)
    resource, for later use in search path decoding.  If we find no
    such resource, return zero.  */
-char *
-x_get_customization_string (XrmDatabase db, const char *name, const char *class)
+static char *
+x_get_customization_string (XrmDatabase db, const char *name,
+			    const char *class)
 {
   char *full_name
     = (char *) alloca (strlen (name) + sizeof ("customization") + 3);
@@ -609,8 +610,9 @@
 /* Retrieve the value of the resource specified by NAME with class CLASS
    and of type TYPE from database RDB.  The value is returned in RET_VALUE. */
 
-int
-x_get_resource (XrmDatabase rdb, const char *name, const char *class, XrmRepresentation expected_type, XrmValue *ret_value)
+static int
+x_get_resource (XrmDatabase rdb, const char *name, const char *class,
+		XrmRepresentation expected_type, XrmValue *ret_value)
 {
   XrmValue value;
   XrmName namelist[100];
--- a/src/xsettings.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/xsettings.h	Mon Dec 27 18:29:38 2010 +0100
@@ -20,8 +20,6 @@
 #ifndef XSETTINGS_H
 #define XSETTINGS_H
 
-EXFUN (Ffont_get_system_font, 0);
-EXFUN (Ffont_get_system_normal_font, 0);
 EXFUN (Ftool_bar_get_system_style, 0);
 
 extern void xsettings_initialize (struct x_display_info *dpyinfo);
--- a/src/xterm.c	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/xterm.c	Mon Dec 27 18:29:38 2010 +0100
@@ -303,12 +303,35 @@
 /* Some functions take this as char *, not const char *.  */
 static char emacs_class[] = EMACS_CLASS;
 
+/* XEmbed implementation.  */
+
+#define XEMBED_VERSION 0
+
+enum xembed_info
+  {
+    XEMBED_MAPPED = 1 << 0
+  };
+
+enum xembed_message
+  {
+    XEMBED_EMBEDDED_NOTIFY        = 0,
+    XEMBED_WINDOW_ACTIVATE        = 1,
+    XEMBED_WINDOW_DEACTIVATE      = 2,
+    XEMBED_REQUEST_FOCUS          = 3,
+    XEMBED_FOCUS_IN               = 4,
+    XEMBED_FOCUS_OUT              = 5,
+    XEMBED_FOCUS_NEXT             = 6,
+    XEMBED_FOCUS_PREV             = 7,
+
+    XEMBED_MODALITY_ON            = 10,
+    XEMBED_MODALITY_OFF           = 11,
+    XEMBED_REGISTER_ACCELERATOR   = 12,
+    XEMBED_UNREGISTER_ACCELERATOR = 13,
+    XEMBED_ACTIVATE_ACCELERATOR   = 14
+  };
+
 /* Used in x_flush.  */
 
-extern XrmDatabase x_load_resources (Display *, const char *, const char *,
-				     const char *);
-extern int x_bitmap_mask (FRAME_PTR, int);
-
 static int x_alloc_nearest_color_1 (Display *, Colormap, XColor *);
 static void x_set_window_size_1 (struct frame *, int, int, int);
 static const XColor *x_color_cells (Display *, int *);
@@ -409,9 +432,8 @@
 
 int event_record_index;
 
-record_event (locus, type)
-     char *locus;
-     int type;
+void
+record_event (char *locus, int type)
 {
   if (event_record_index == sizeof (event_record) / sizeof (struct record))
     event_record_index = 0;
@@ -900,6 +922,7 @@
                                 XRectangle *);
 static void x_draw_box_rect (struct glyph_string *, int, int, int, int,
                              int, int, int, XRectangle *);
+static void x_scroll_bar_clear (struct frame *);
 
 #if GLYPH_DEBUG
 static void x_check_font (struct frame *, struct font *);
@@ -1460,22 +1483,6 @@
 }
 
 
-/* Allocate a color which is lighter or darker than *PIXEL by FACTOR
-   or DELTA.  Try a color with RGB values multiplied by FACTOR first.
-   If this produces the same color as PIXEL, try a color where all RGB
-   values have DELTA added.  Return the allocated color in *PIXEL.
-   DISPLAY is the X display, CMAP is the colormap to operate on.
-   Value is non-zero if successful.  */
-
-int
-x_alloc_lighter_color_for_widget (Widget widget, Display *display, Colormap cmap,
-				  unsigned long *pixel, double factor, int delta)
-{
-  struct frame *f = x_frame_of_widget (widget);
-  return x_alloc_lighter_color (f, display, cmap, pixel, factor, delta);
-}
-
-
 /* Structure specifying which arguments should be passed by Xt to
    cvt_string_to_pixel.  We want the widget's screen and colormap.  */
 
@@ -5614,7 +5621,7 @@
    Clear out the scroll bars, and ask for expose events, so we can
    redraw them.  */
 
-void
+static void
 x_scroll_bar_clear (FRAME_PTR f)
 {
 #ifndef USE_TOOLKIT_SCROLL_BARS
@@ -5764,6 +5771,10 @@
 #endif /* USE_GTK */
 
 
+static void xembed_send_message (struct frame *f, Time time,
+                                 enum xembed_message message,
+                                 long detail, long data1, long data2);
+
 /* Handles the XEvent EVENT on display DPYINFO.
 
    *FINISH is X_EVENT_GOTO_OUT if caller should stop reading events.
@@ -8987,7 +8998,7 @@
 
 /* XEmbed implementation.  */
 
-void
+static void
 xembed_set_info (struct frame *f, enum xembed_info flags)
 {
   unsigned long data[2];
@@ -9001,7 +9012,7 @@
 		   32, PropModeReplace, (unsigned char *) data, 2);
 }
 
-void
+static void
 xembed_send_message (struct frame *f, Time time, enum xembed_message message, long int detail, long int data1, long int data2)
 {
   XEvent event;
--- a/src/xterm.h	Mon Dec 27 18:23:49 2010 +0100
+++ b/src/xterm.h	Mon Dec 27 18:29:38 2010 +0100
@@ -933,11 +933,7 @@
 
 /* From xfns.c.  */
 
-Lisp_Object display_x_get_resource (struct x_display_info *,
-                                    Lisp_Object, Lisp_Object,
-                                    Lisp_Object, Lisp_Object);
 struct frame *check_x_frame (Lisp_Object);
-EXFUN (Fx_display_color_p, 1);
 EXFUN (Fx_display_grayscale_p, 1);
 extern void x_free_gcs (struct frame *);
 extern int gray_bitmap_width, gray_bitmap_height;
@@ -945,25 +941,11 @@
 
 /* From xrdb.c.  */
 
-char *x_get_customization_string (XrmDatabase, const char *, const char *);
 XrmDatabase x_load_resources (Display *, const char *, const char *,
 			      const char *);
-int x_get_resource (XrmDatabase, const char *, const char *,
-                    XrmRepresentation, XrmValue *);
-void x_delete_display (struct x_display_info *);
-void x_make_frame_visible (struct frame *);
-void x_iconify_frame (struct frame *);
-void x_wm_set_size_hint (struct frame *, long, int);
-int x_text_icon (struct frame *, const char *);
-int x_bitmap_icon (struct frame *, Lisp_Object);
-void x_set_window_size (struct frame *, int, int, int);
-void x_wm_set_window_state (struct frame *, int);
-int x_alloc_nearest_color (struct frame *, Colormap, XColor *);
 
 /* Defined in xterm.c */
 
-extern void cancel_mouse_face (struct frame *);
-extern void x_scroll_bar_clear (struct frame *);
 extern int x_text_icon (struct frame *, const char *);
 extern int x_bitmap_icon (struct frame *, Lisp_Object);
 extern void x_catch_errors (Display *);
@@ -992,11 +974,9 @@
 extern unsigned long x_copy_color (struct frame *, unsigned long);
 #ifdef USE_X_TOOLKIT
 extern XtAppContext Xt_app_con;
-extern int x_alloc_lighter_color_for_widget (Widget, Display*, Colormap,
-                                             unsigned long *,
-                                             double, int);
 extern void x_activate_timeout_atimer (void);
 #endif
+extern int x_alloc_nearest_color (struct frame *, Colormap, XColor *);
 extern void x_query_colors (struct frame *f, XColor *, int);
 extern void x_query_color (struct frame *f, XColor *);
 extern void x_clear_area (Display *, Window, int, int, int, int, int);
@@ -1076,8 +1056,6 @@
 
 /* Defined in xfaces.c */
 
-extern int compute_glyph_face (struct frame *, int, int);
-extern int compute_glyph_face_1 (struct frame *, Lisp_Object, int);
 extern void x_free_dpy_colors (Display *, Screen *, Colormap,
                                unsigned long *, int);
 
@@ -1104,61 +1082,9 @@
 extern void x_session_close (void);
 #endif
 
-/* XEmbed implementation.  */
-
-#define XEMBED_VERSION 0
-
-enum xembed_info
-  {
-    XEMBED_MAPPED = 1 << 0
-  };
-
-enum xembed_message
-  {
-    XEMBED_EMBEDDED_NOTIFY        = 0,
-    XEMBED_WINDOW_ACTIVATE        = 1,
-    XEMBED_WINDOW_DEACTIVATE      = 2,
-    XEMBED_REQUEST_FOCUS          = 3,
-    XEMBED_FOCUS_IN               = 4,
-    XEMBED_FOCUS_OUT              = 5,
-    XEMBED_FOCUS_NEXT             = 6,
-    XEMBED_FOCUS_PREV             = 7,
-
-    XEMBED_MODALITY_ON            = 10,
-    XEMBED_MODALITY_OFF           = 11,
-    XEMBED_REGISTER_ACCELERATOR   = 12,
-    XEMBED_UNREGISTER_ACCELERATOR = 13,
-    XEMBED_ACTIVATE_ACCELERATOR   = 14
-  };
-
-enum xembed_focus
-  {
-    XEMBED_FOCUS_CURRENT = 0,
-    XEMBED_FOCUS_FIRST   = 1,
-    XEMBED_FOCUS_LAST    = 2
-  };
-
-enum xembed_modifier
-  {
-    XEMBED_MODIFIER_SHIFT   = 1 << 0,
-    XEMBED_MODIFIER_CONTROL = 1 << 1,
-    XEMBED_MODIFIER_ALT     = 1 << 2,
-    XEMBED_MODIFIER_SUPER   = 1 << 3,
-    XEMBED_MODIFIER_HYPER   = 1 << 4
-  };
-
-enum xembed_accelerator
-  {
-    XEMBED_ACCELERATOR_OVERLOADED = 1 << 0
-  };
-
 /* Defined in xterm.c */
 
 extern Lisp_Object Qx_gtk_map_stock;
-extern void xembed_set_info (struct frame *f, enum xembed_info flags);
-extern void xembed_send_message (struct frame *f, Time time,
-                                 enum xembed_message message,
-                                 long detail, long data1, long data2);
 
 /* Is the frame embedded into another application? */