changeset 109637:c4c8e4a16194

Remove extern declarations in .c files, .h files have them. * src/data.c: * src/dired.c: * src/editfns.c: * src/filelock.c: * src/fns.c: * src/font.c: * src/fontset.c: * src/frame.c: * src/fringe.c: * src/ftfont.c: * src/gtkutil.c: * src/indent.c: * src/keyboard.c: * src/keymap.c: * src/lread.c: * src/menu.c: * src/print.c: * src/search.c: * src/sound.c: * src/window.c: * src/xdisp.c: * src/xfaces.c: * src/xfns.c: * src/xfont.c: * src/xftfont.c: * src/xmenu.c: * src/xterm.c: Remove declarations.
author Dan Nicolaescu <dann@ics.uci.edu>
date Thu, 05 Aug 2010 16:34:12 -0700
parents 2d3e59e887ac
children e04aa89bb748
files src/ChangeLog src/data.c src/dired.c src/editfns.c src/filelock.c src/fns.c src/font.c src/fontset.c src/frame.c src/fringe.c src/ftfont.c src/gtkutil.c src/indent.c src/keyboard.c src/keymap.c src/lread.c src/menu.c src/print.c src/search.c src/sound.c src/window.c src/xdisp.c src/xfaces.c src/xfns.c src/xfont.c src/xftfont.c src/xmenu.c src/xterm.c
diffstat 28 files changed, 34 insertions(+), 221 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/ChangeLog	Thu Aug 05 16:34:12 2010 -0700
@@ -1,5 +1,34 @@
 2010-08-05  Dan Nicolaescu  <dann@ics.uci.edu>
 
+	Remove extern declarations in .c files, .h files have them.
+	* data.c:
+	* dired.c:
+	* editfns.c:
+	* filelock.c:
+	* fns.c:
+	* font.c:
+	* fontset.c:
+	* frame.c:
+	* fringe.c:
+	* ftfont.c:
+	* gtkutil.c:
+	* indent.c:
+	* keyboard.c:
+	* keymap.c:
+	* lread.c:
+	* menu.c:
+	* print.c:
+	* search.c:
+	* sound.c:
+	* window.c:
+	* xdisp.c:
+	* xfaces.c:
+	* xfns.c:
+	* xfont.c:
+	* xftfont.c:
+	* xmenu.c:
+	* xterm.c: Remove declarations.
+
 	Cleanup syssignal.h.
 	* syssignal.h (sighold, sigrelse, RETSIGTYPE): Remove, unused.
 	(main_thread): Move down to remove #ifdef.
--- a/src/data.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/data.c	Thu Aug 05 16:34:12 2010 -0700
@@ -665,8 +665,6 @@
   return definition;
 }
 
-extern Lisp_Object Qfunction_documentation;
-
 DEFUN ("defalias", Fdefalias, Sdefalias, 2, 3, 0,
        doc: /* Set SYMBOL's function definition to DEFINITION, and return DEFINITION.
 Associates the function with the current load file, if any.
@@ -2503,8 +2501,6 @@
 
 static Lisp_Object float_arith_driver (double, int, enum arithop,
                                        int, Lisp_Object *);
-extern Lisp_Object fmod_float (Lisp_Object, Lisp_Object);
-
 Lisp_Object
 arith_driver (enum arithop code, int nargs, register Lisp_Object *args)
 {
--- a/src/dired.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/dired.c	Thu Aug 05 16:34:12 2010 -0700
@@ -82,9 +82,6 @@
 #include "regex.h"
 #include "blockinput.h"
 
-/* Returns a search buffer, with a fastmap allocated and ready to go.  */
-extern struct re_pattern_buffer *compile_pattern (Lisp_Object, struct re_registers *, Lisp_Object, int, int);
-
 /* From filemode.c.  Can't go in Lisp.h because of `stat'.  */
 extern void filemodestring (struct stat *, char *);
 
--- a/src/editfns.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/editfns.c	Thu Aug 05 16:34:12 2010 -0700
@@ -3380,9 +3380,6 @@
       return val;
     }
 }
-#ifdef HAVE_MENUS
-extern Lisp_Object last_nonmenu_event;
-#endif
 
 DEFUN ("message-or-box", Fmessage_or_box, Smessage_or_box, 1, MANY, 0,
        doc: /* Display a message in a dialog box or in the echo area.
--- a/src/filelock.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/filelock.c	Thu Aug 05 16:34:12 2010 -0700
@@ -117,8 +117,6 @@
 static time_t boot_time;
 static int boot_time_initialized;
 
-extern Lisp_Object Vshell_file_name;
-
 #ifdef BOOT_TIME
 static void get_boot_time_1 (char *, int);
 #endif
--- a/src/fns.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/fns.c	Thu Aug 05 16:34:12 2010 -0700
@@ -61,18 +61,12 @@
    questions asked by mouse commands.  */
 int use_file_dialog;
 
-extern Lisp_Object minibuf_window;
-extern Lisp_Object Vlocale_coding_system;
-extern int load_in_progress;
-
 Lisp_Object Qstring_lessp, Qprovide, Qrequire;
 Lisp_Object Qyes_or_no_p_history;
 Lisp_Object Qcursor_in_echo_area;
 Lisp_Object Qwidget_type;
 Lisp_Object Qcodeset, Qdays, Qmonths, Qpaper;
 
-extern Lisp_Object Qinput_method_function;
-
 static int internal_equal (Lisp_Object , Lisp_Object, int, int);
 
 extern long get_random (void);
@@ -2706,7 +2700,6 @@
 }
 
 Lisp_Object Vfeatures, Qsubfeatures;
-extern Lisp_Object Vafter_load_alist;
 
 DEFUN ("featurep", Ffeaturep, Sfeaturep, 1, 2, 0,
        doc: /* Returns t if FEATURE is present in this Emacs.
--- a/src/font.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/font.c	Thu Aug 05 16:34:12 2010 -0700
@@ -48,10 +48,6 @@
 #include "nsterm.h"
 #endif /* HAVE_NS */
 
-#ifdef HAVE_NS
-extern Lisp_Object Qfontsize;
-#endif
-
 Lisp_Object Qopentype;
 
 /* Important character set strings.  */
@@ -394,11 +390,6 @@
   return (for_face ? AREF (elt, 1) : AREF (elt, (i & 0xF) + 1));
 }
 
-extern Lisp_Object Vface_alternative_font_family_alist;
-
-extern Lisp_Object find_font_encoding (Lisp_Object);
-
-
 /* Return ENCODING or a cons of ENCODING and REPERTORY of the font
    FONTNAME.  ENCODING is a charset symbol that specifies the encoding
    of the font.  REPERTORY is a charset symbol or nil.  */
@@ -603,7 +594,7 @@
 
 /* Structure of known font property keys and validater of the
    values.  */
-struct
+static const struct
 {
   /* Pointer to the key symbol.  */
   Lisp_Object *key;
@@ -2138,9 +2129,6 @@
 static Lisp_Object font_sort_entities (Lisp_Object, Lisp_Object,
                                        Lisp_Object, int);
 
-/* Return a rescaling ratio of FONT_ENTITY.  */
-extern Lisp_Object Vface_font_rescale_alist;
-
 static double
 font_rescale_ratio (Lisp_Object font_entity)
 {
@@ -2723,8 +2711,6 @@
      (2) doesn't match with any regexps in Vface_ignored_fonts (if non-nil).
 */
 
-extern Lisp_Object Vface_ignored_fonts;
-
 Lisp_Object
 font_delete_unmatched (Lisp_Object vec, Lisp_Object spec, int size)
 {
@@ -5169,15 +5155,6 @@
   ASET (Vfont_log_deferred, 2, result);
 }
 
-extern void syms_of_ftfont (void);
-extern void syms_of_xfont (void);
-extern void syms_of_xftfont (void);
-extern void syms_of_ftxfont (void);
-extern void syms_of_bdffont (void);
-extern void syms_of_w32font (void);
-extern void syms_of_atmfont (void);
-extern void syms_of_nsfont (void);
-
 void
 syms_of_font (void)
 {
--- a/src/fontset.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/fontset.c	Thu Aug 05 16:34:12 2010 -0700
@@ -177,7 +177,6 @@
 
 /********** VARIABLES and FUNCTION PROTOTYPES **********/
 
-extern Lisp_Object Qfont;
 static Lisp_Object Qfontset;
 static Lisp_Object Qfontset_info;
 static Lisp_Object Qprepend, Qappend;
@@ -388,8 +387,6 @@
    If PREFERRED_FAMILY is not nil, that family has the higher priority
    if the encoding charsets or languages in font-specs are the same.  */
 
-extern Lisp_Object Fassoc_string (Lisp_Object, Lisp_Object, Lisp_Object);
-
 static void
 reorder_font_vector (Lisp_Object font_group, struct font *font)
 {
@@ -1395,7 +1392,6 @@
   ASET (arg, 4, script_range_list);
 }
 
-extern Lisp_Object QCfamily, QCregistry;
 static void update_auto_fontset_alist (Lisp_Object, Lisp_Object);
 
 
--- a/src/frame.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/frame.c	Thu Aug 05 16:34:12 2010 -0700
@@ -198,13 +198,6 @@
 
 Lisp_Object Vframe_list;
 
-extern Lisp_Object Vminibuffer_list;
-extern Lisp_Object get_minibuffer (int);
-extern Lisp_Object Fhandle_switch_frame (Lisp_Object event);
-extern Lisp_Object Fredirect_frame_focus (Lisp_Object frame, Lisp_Object focus_frame);
-extern Lisp_Object x_get_focus_frame (struct frame *frame);
-extern Lisp_Object QCname, Qfont_param;
-
 
 DEFUN ("framep", Fframep, Sframep, 1, 1, 0,
        doc: /* Return non-nil if OBJECT is a frame.
@@ -1281,8 +1274,6 @@
   return 1;
 }
 
-extern Lisp_Object Qrun_hook_with_args;
-
 /* Delete FRAME.  When FORCE equals Qnoelisp, delete FRAME
   unconditionally.  x_connection_closed and delete_terminal use
   this.  Any other value of FORCE implements the semantics
@@ -2822,9 +2813,6 @@
 
 #ifdef HAVE_WINDOW_SYSTEM
 
-extern Lisp_Object Qbox;
-extern Lisp_Object Qtop;
-
 /* Calculate fullscreen size.  Return in *TOP_POS and *LEFT_POS the
    wanted positions of the WM window (not Emacs window).
    Return in *WIDTH and *HEIGHT the wanted width and height of Emacs
--- a/src/fringe.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/fringe.c	Thu Aug 05 16:34:12 2010 -0700
@@ -32,10 +32,6 @@
 
 #ifdef HAVE_WINDOW_SYSTEM
 
-extern Lisp_Object Qfringe;
-extern Lisp_Object Qtop, Qbottom, Qcenter;
-extern Lisp_Object Qup, Qdown, Qleft, Qright;
-
 /* Non-nil means that newline may flow into the right fringe.  */
 
 Lisp_Object Voverflow_newline_into_fringe;
@@ -83,10 +79,8 @@
    must specify physical bitmap symbols.
 */
 
-extern Lisp_Object Qunknown;
 Lisp_Object Qtruncation, Qcontinuation, Qoverlay_arrow;
 Lisp_Object Qempty_line, Qtop_bottom;
-extern Lisp_Object Qbar, Qhbar, Qbox, Qhollow;
 Lisp_Object Qhollow_small;
 
 enum fringe_bitmap_align
--- a/src/ftfont.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/ftfont.c	Thu Aug 05 16:34:12 2010 -0700
@@ -144,8 +144,6 @@
     { NULL }
   };
 
-extern Lisp_Object Qc, Qm, Qp, Qd;
-
 /* Dirty hack for handing ADSTYLE property.
 
    Fontconfig (actually the underlying FreeType) gives such ADSTYLE
@@ -548,8 +546,6 @@
     ftfont_filter_properties, /* filter_properties */
   };
 
-extern Lisp_Object QCname;
-
 static Lisp_Object
 ftfont_get_cache (FRAME_PTR f)
 {
@@ -2333,8 +2329,6 @@
 
 static int m17n_flt_initialized;
 
-extern Lisp_Object QCfamily;
-
 static Lisp_Object
 ftfont_shape_by_flt (Lisp_Object lgstring, struct font *font,
 		     FT_Face ft_face, OTF *otf, FT_Matrix *matrix)
--- a/src/gtkutil.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/gtkutil.c	Thu Aug 05 16:34:12 2010 -0700
@@ -4156,8 +4156,6 @@
 
 /* Update the tool bar for frame F.  Add new buttons and remove old.  */
 
-extern Lisp_Object Qx_gtk_map_stock;
-
 void
 update_frame_tool_bar (FRAME_PTR f)
 {
--- a/src/indent.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/indent.c	Thu Aug 05 16:34:12 2010 -0700
@@ -469,7 +469,6 @@
   return col;
 }
 
-extern Lisp_Object Qspace, QCwidth, QCalign_to;
 
 /* Check the presence of a display property and compute its width.
    If a property was found and its width was found as well, return
--- a/src/keyboard.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/keyboard.c	Thu Aug 05 16:34:12 2010 -0700
@@ -465,8 +465,6 @@
 Lisp_Object Qselect_window;
 Lisp_Object Qhelp_echo;
 
-extern Lisp_Object Qremap;
-
 #if defined (HAVE_MOUSE) || defined (HAVE_GPM)
 Lisp_Object Qmouse_fixup_help_message;
 #endif
@@ -513,9 +511,6 @@
 Lisp_Object Qvertical_line;
 Lisp_Object Qvertical_scroll_bar;
 Lisp_Object Qmenu_bar;
-extern Lisp_Object Qleft_margin, Qright_margin;
-extern Lisp_Object Qleft_fringe, Qright_fringe;
-extern Lisp_Object QCmap;
 
 Lisp_Object recursive_edit_unwind (Lisp_Object buffer), command_loop (void);
 Lisp_Object Fthis_command_keys (void);
@@ -536,8 +531,6 @@
 /* Incremented whenever a timer is run.  */
 int timers_run;
 
-extern Lisp_Object Vprint_level, Vprint_length;
-
 /* Address (if not 0) of EMACS_TIME to zero out if a SIGIO interrupt
    happens.  */
 EMACS_TIME *input_available_clear_time;
@@ -644,7 +637,6 @@
    to support it.  */
 static int cannot_suspend;
 
-extern Lisp_Object Qidentity, Qonly;
 
 /* Install the string STR as the beginning of the string of echoing,
    so that it serves as a prompt for the next character.
@@ -1835,8 +1827,6 @@
    `composition', `display' and `invisible' properties.
    LAST_PT is the last position of point.  */
 
-extern Lisp_Object get_pos_property (Lisp_Object, Lisp_Object, Lisp_Object);
-
 static void
 adjust_point_for_property (int last_pt, int modified)
 {
@@ -4363,8 +4353,6 @@
    ...).  Each element has the form (FUN . ARGS).  */
 Lisp_Object pending_funcalls;
 
-extern Lisp_Object Qapply;
-
 /* Check whether a timer has fired.  To prevent larger problems we simply
    disregard elements that are not proper timers.  Do not make a circular
    timer list for the time being.
@@ -8007,9 +7995,8 @@
 
 static int ntool_bar_items;
 
-/* The symbols `tool-bar', `:image' and `:rtl'.  */
-
-extern Lisp_Object Qtool_bar;
+/* The symbols `:image' and `:rtl'.  */
+
 Lisp_Object QCimage;
 Lisp_Object Qrtl;
 
@@ -10233,7 +10220,6 @@
   register Lisp_Object final;
   register Lisp_Object tem;
   Lisp_Object prefixarg;
-  extern int debug_on_next_call;
 
   debug_on_next_call = 0;
 
--- a/src/keymap.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/keymap.c	Thu Aug 05 16:34:12 2010 -0700
@@ -103,11 +103,6 @@
 /* Pre-allocated 2-element vector for Fcommand_remapping to use.  */
 static Lisp_Object command_remapping_vector;
 
-/* A char with the CHAR_META bit set in a vector or the 0200 bit set
-   in a string key sequence is equivalent to prefixing with this
-   character.  */
-extern Lisp_Object meta_prefix_char;
-
 /* Hash table used to cache a reverse-map to speed up calls to where-is.  */
 static Lisp_Object where_is_cache;
 /* Which keymaps are reverse-stored in the cache.  */
--- a/src/lread.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/lread.c	Thu Aug 05 16:34:12 2010 -0700
@@ -75,7 +75,6 @@
 Lisp_Object Qweakness;
 Lisp_Object Qrehash_size;
 Lisp_Object Qrehash_threshold;
-extern Lisp_Object QCtest, QCsize, QCrehash_size, QCrehash_threshold, QCweakness;
 
 Lisp_Object Qread_char, Qget_file_char, Qstandard_input, Qcurrent_load_list;
 Lisp_Object Qvariable_documentation, Vvalues, Vstandard_input, Vafter_load_alist;
@@ -91,9 +90,6 @@
 
 static Lisp_Object Qload_force_doc_strings;
 
-extern Lisp_Object Qevent_symbol_element_mask;
-extern Lisp_Object Qfile_exists_p;
-
 /* non-zero if inside `load' */
 int load_in_progress;
 static Lisp_Object Qload_in_progress;
--- a/src/menu.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/menu.c	Thu Aug 05 16:34:12 2010 -0700
@@ -61,12 +61,6 @@
 #define HAVE_BOXES 1
 #endif
 
-/* The timestamp of the last input event Emacs received from the X server.  */
-/* Defined in keyboard.c.  */
-extern unsigned long last_event_timestamp;
-
-extern Lisp_Object QCtoggle, QCradio;
-
 Lisp_Object menu_items;
 
 /* If non-nil, means that the global vars defined here are already in use.
--- a/src/print.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/print.c	Thu Aug 05 16:34:12 2010 -0700
@@ -42,7 +42,6 @@
 Lisp_Object Qtemp_buffer_setup_hook;
 
 /* These are used to print like we read.  */
-extern Lisp_Object Qbackquote, Qcomma, Qcomma_at, Qcomma_dot, Qfunction;
 
 Lisp_Object Vfloat_output_format, Qfloat_output_format;
 
@@ -161,11 +160,6 @@
 #define PRINT_NUMBER_OBJECT(table,i) XVECTOR ((table))->contents[(i) * 2]
 #define PRINT_NUMBER_STATUS(table,i) XVECTOR ((table))->contents[(i) * 2 + 1]
 
-/* Nonzero means print newline to stdout before next minibuffer message.
-   Defined in xdisp.c */
-
-extern int noninteractive_need_newline;
-
 void print_interval (INTERVAL interval, Lisp_Object printcharfun);
 
 /* GDB resets this to zero on W32 to disable OutputDebugString calls.  */
@@ -1401,7 +1395,6 @@
 /* A flag to control printing of `charset' text property.
    The default value is Qdefault. */
 Lisp_Object Vprint_charset_text_property;
-extern Lisp_Object Qdefault;
 
 static void print_check_string_charset_prop (INTERVAL interval, Lisp_Object string);
 
--- a/src/search.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/search.c	Thu Aug 05 16:34:12 2010 -0700
@@ -504,8 +504,6 @@
    This does not clobber the match data.
    We assume that STRING contains single-byte characters.  */
 
-extern Lisp_Object Vascii_downcase_table;
-
 int
 fast_c_string_match_ignore_case (Lisp_Object regexp, const char *string)
 {
--- a/src/sound.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/sound.c	Thu Aug 05 16:34:12 2010 -0700
@@ -99,7 +99,6 @@
 
 /* Symbols.  */
 
-extern Lisp_Object QCfile, QCdata;
 Lisp_Object QCvolume, QCdevice;
 Lisp_Object Qsound;
 Lisp_Object Qplay_sound_functions;
--- a/src/window.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/window.c	Thu Aug 05 16:34:12 2010 -0700
@@ -57,8 +57,6 @@
 Lisp_Object Qscroll_up, Qscroll_down, Qscroll_command;
 Lisp_Object Qwindow_size_fixed;
 
-extern Lisp_Object Qleft_margin, Qright_margin;
-
 static int displayed_window_lines (struct window *);
 static struct window *decode_window (Lisp_Object);
 static int count_windows (struct window *);
@@ -191,16 +189,11 @@
 static int inhibit_frame_unsplittable;
 #endif /* 0 */
 
-extern EMACS_INT scroll_margin;
-
-extern Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions;
-
 /* If non-nil, then the `recenter' command with a nil argument
    the entire frame to be redrawn; the special value `tty' causes the
    frame to be redrawn only if it is a tty frame.  */
 
 static Lisp_Object Vrecenter_redisplay;
-extern Lisp_Object Qtty;
 
 
 DEFUN ("windowp", Fwindowp, Swindowp, 1, 1, 0,
--- a/src/xdisp.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/xdisp.c	Thu Aug 05 16:34:12 2010 -0700
@@ -239,6 +239,7 @@
 #include "macros.h"
 #include "disptab.h"
 #include "termhooks.h"
+#include "termopts.h"
 #include "intervals.h"
 #include "coding.h"
 #include "process.h"
@@ -268,23 +269,6 @@
 
 #define INFINITY 10000000
 
-#if defined (USE_X_TOOLKIT) || defined (HAVE_NTGUI) \
-    || defined(HAVE_NS) || defined (USE_GTK)
-extern void set_frame_menubar (struct frame *f, int, int);
-#endif
-
-extern int interrupt_input;
-extern int command_loop_level;
-
-extern Lisp_Object Vminibuffer_list;
-
-extern Lisp_Object Qface;
-extern Lisp_Object Qmode_line, Qmode_line_inactive, Qheader_line;
-
-extern Lisp_Object Qwhen;
-extern Lisp_Object Qhelp_echo;
-extern Lisp_Object Qbefore_string, Qafter_string;
-
 Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map;
 Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions;
 Lisp_Object Qwindow_text_change_functions, Vwindow_text_change_functions;
@@ -385,10 +369,6 @@
 Lisp_Object Qcenter;
 Lisp_Object Qmargin, Qpointer;
 Lisp_Object Qline_height;
-extern Lisp_Object Qheight;
-extern Lisp_Object QCwidth, QCheight, QCascent;
-extern Lisp_Object Qscroll_bar;
-extern Lisp_Object Qcursor;
 
 /* Non-nil means highlight trailing whitespace.  */
 
@@ -399,7 +379,6 @@
 Lisp_Object Vnobreak_char_display;
 
 #ifdef HAVE_WINDOW_SYSTEM
-extern Lisp_Object Voverflow_newline_into_fringe;
 
 /* Test if overflow newline into fringe.  Called with iterator IT
    at or past right window margin, and with IT->current_x set.  */
--- a/src/xfaces.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/xfaces.c	Thu Aug 05 16:34:12 2010 -0700
@@ -321,11 +321,6 @@
 Lisp_Object QCoverline, QCstrike_through, QCbox, QCinherit;
 Lisp_Object QCfontset;
 
-/* Keywords symbols used for font properties.  */
-extern Lisp_Object QCfoundry, QCadstyle, QCregistry;
-extern Lisp_Object QCspacing, QCsize, QCavgwidth;
-extern Lisp_Object Qp;
-
 /* Symbols used for attribute values.  */
 
 Lisp_Object Qnormal, Qbold, Qultra_light, Qextra_light, Qlight;
@@ -351,7 +346,6 @@
 Lisp_Object Qdefault, Qtool_bar, Qregion, Qfringe;
 Lisp_Object Qheader_line, Qscroll_bar, Qcursor, Qborder, Qmouse, Qmenu;
 Lisp_Object Qmode_line_inactive, Qvertical_border;
-extern Lisp_Object Qmode_line;
 
 /* The symbol `face-alias'.  A symbols having that property is an
    alias for another face.  Value of the property is the name of
@@ -359,8 +353,6 @@
 
 Lisp_Object Qface_alias;
 
-extern Lisp_Object Qcircular_list;
-
 /* Default stipple pattern used on monochrome displays.  This stipple
    pattern is used on monochrome displays instead of shades of gray
    for a face background color.  See `set-face-stipple' for possible
--- a/src/xfns.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/xfns.c	Thu Aug 05 16:34:12 2010 -0700
@@ -202,19 +202,6 @@
 Lisp_Object Qcompound_text, Qcancel_timer;
 Lisp_Object Qfont_param;
 
-/* In dispnew.c */
-
-extern Lisp_Object Vwindow_system_version;
-
-/* In editfns.c */
-
-extern Lisp_Object Vsystem_name;
-
-/* The below are defined in frame.c.  */
-
-extern Lisp_Object Vmenu_bar_mode, Vtool_bar_mode;
-extern Lisp_Object Qtooltip;
-
 #if GLYPH_DEBUG
 int image_cache_refcount, dpyinfo_refcount;
 #endif
--- a/src/xfont.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/xfont.c	Thu Aug 05 16:34:12 2010 -0700
@@ -154,8 +154,6 @@
     NULL, /* filter_properties */
   };
 
-extern Lisp_Object QCname;
-
 static Lisp_Object
 xfont_get_cache (FRAME_PTR f)
 {
@@ -164,8 +162,6 @@
   return (dpyinfo->name_list_element);
 }
 
-extern Lisp_Object Vface_alternative_font_registry_alist;
-
 static int
 compare_font_names (const void *name1, const void *name2)
 {
@@ -289,8 +285,6 @@
 /* Re-usable vector to store characteristic font properites.   */
 static Lisp_Object xfont_scratch_props;
 
-extern Lisp_Object Qlatin;
-
 /* Return a list of scripts supported by the font of FONTNAME whose
    characteristic properties are in PROPS and whose encoding charset
    is ENCODING.  A caller must call BLOCK_INPUT in advance.  */
@@ -339,8 +333,6 @@
   return scripts;
 }
 
-extern Lisp_Object Vscalable_fonts_allowed;
-
 static Lisp_Object
 xfont_list_pattern (Display *display, char *pattern,
 		    Lisp_Object registry, Lisp_Object script)
@@ -687,8 +679,6 @@
   return list;
 }
 
-extern Lisp_Object QCavgwidth;
-
 static Lisp_Object
 xfont_open (FRAME_PTR f, Lisp_Object entity, int pixel_size)
 {
--- a/src/xftfont.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/xftfont.c	Thu Aug 05 16:34:12 2010 -0700
@@ -171,10 +171,6 @@
   return entity;
 }
 
-extern Lisp_Object ftfont_font_format (FcPattern *, Lisp_Object);
-extern FcCharSet *ftfont_get_fc_charset (Lisp_Object);
-extern Lisp_Object QCantialias;
-
 static FcChar8 ascii_printable[95];
 
 static void
@@ -552,8 +548,6 @@
     }
 }
 
-extern Lisp_Object Qja, Qko;
-
 static int
 xftfont_has_char (Lisp_Object font, int c)
 {
--- a/src/xmenu.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/xmenu.c	Thu Aug 05 16:34:12 2010 -0700
@@ -109,26 +109,7 @@
 
 Lisp_Object Qdebug_on_next_call;
 
-extern Lisp_Object Qmenu_bar;
-
-extern Lisp_Object QCtoggle, QCradio;
-
-extern Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map;
-
-extern Lisp_Object Qmenu_bar_update_hook;
-
-#ifdef USE_X_TOOLKIT
-extern void set_frame_menubar (FRAME_PTR, int, int);
-extern XtAppContext Xt_app_con;
-
-static Lisp_Object xdialog_show (FRAME_PTR, int, Lisp_Object, Lisp_Object,
-                                 char **);
-static void popup_get_selection (XEvent *, struct x_display_info *,
-                                 LWLIB_ID, int);
-#endif /* USE_X_TOOLKIT */
-
-#ifdef USE_GTK
-extern void set_frame_menubar (FRAME_PTR, int, int);
+#if defined (USE_X_TOOLKIT) || defined (USE_GTK)
 static Lisp_Object xdialog_show (FRAME_PTR, int, Lisp_Object, Lisp_Object,
                                  char **);
 #endif
@@ -141,7 +122,6 @@
 
 static int next_menubar_widget_id;
 
-/* For NS and NTGUI, these prototypes are defined in keyboard.h.  */
 #if defined (USE_X_TOOLKIT) || defined (USE_GTK)
 extern widget_value *xmalloc_widget_value (void);
 extern widget_value *digest_single_submenu (int, int, int);
--- a/src/xterm.c	Thu Aug 05 16:22:18 2010 -0700
+++ b/src/xterm.c	Thu Aug 05 16:34:12 2010 -0700
@@ -293,23 +293,6 @@
 
 static int x_noop_count;
 
-/* Initial values of argv and argc.  */
-
-extern char **initial_argv;
-extern int initial_argc;
-
-extern Lisp_Object Vcommand_line_args, Vsystem_name;
-
-/* Tells if a window manager is present or not.  */
-
-extern Lisp_Object Vx_no_window_manager;
-
-extern Lisp_Object Qeql;
-
-/* A mask of extra modifier bits to put into every keyboard char.  */
-
-extern EMACS_INT extra_keyboard_modifiers;
-
 /* The keysyms to use for the various modifiers.  */
 
 Lisp_Object Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym, Vx_super_keysym;
@@ -329,8 +312,6 @@
 
 /* Used in x_flush.  */
 
-extern Lisp_Object Vinhibit_redisplay;
-
 extern XrmDatabase x_load_resources (Display *, const char *, const char *,
 				     const char *);
 extern int x_bitmap_mask (FRAME_PTR, int);