summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog73
-rw-r--r--src/buffer.c2
-rw-r--r--src/callint.c9
-rw-r--r--src/callproc.c2
-rw-r--r--src/ccl.c2
-rw-r--r--src/charset.c9
-rw-r--r--src/cmds.c3
-rw-r--r--src/coding.c4
-rw-r--r--src/coding.h3
-rw-r--r--src/composite.c2
-rw-r--r--src/data.c3
-rw-r--r--src/dired.c3
-rw-r--r--src/dispnew.c1
-rw-r--r--src/doc.c4
-rw-r--r--src/eval.c6
-rw-r--r--src/fileio.c9
-rw-r--r--src/fns.c1
-rw-r--r--src/fontset.c1
-rw-r--r--src/frame.c1
-rw-r--r--src/frame.h1
-rw-r--r--src/image.c2
-rw-r--r--src/keyboard.c10
-rw-r--r--src/keyboard.h20
-rw-r--r--src/keymap.c2
-rw-r--r--src/keymap.h4
-rw-r--r--src/lisp.h38
-rw-r--r--src/macros.c2
-rw-r--r--src/minibuf.c7
-rw-r--r--src/msdos.c1
-rw-r--r--src/print.c2
-rw-r--r--src/w32select.c1
-rw-r--r--src/xdisp.c10
-rw-r--r--src/xfaces.c2
-rw-r--r--src/xfns.c20
-rw-r--r--src/xmenu.c4
-rw-r--r--src/xrdb.c1
-rw-r--r--src/xsmfns.c4
-rw-r--r--src/xterm.c3
-rw-r--r--src/xterm.h3
39 files changed, 149 insertions, 126 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index ab6f98e8bd9..3c1a543d3ec 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,78 @@
2010-07-29 Dan Nicolaescu <dann@ics.uci.edu>
+ Remove extern declarations from .c files, and them to .h files.
+ * keyboard.h (Qhelp_echo, waiting_for_input)
+ (input_available_clear_time, ignore_mouse_drag_p)
+ (Vdouble_click_time, real_this_command, Vthis_original_command):
+ * keymap.h (Qremap, Qmenu_item, Voverriding_local_map)
+ (Voverriding_local_map_menu_flag):
+ * lisp.h (Qinteractive_form, use_file_dialog)
+ (Qcursor_in_echo_area, QCascent, QCmargin, QCrelief, Qcount)
+ (Qextension_data, QCconversion, QCcolor_symbols, QCheuristic_mask)
+ (QCindex, QCmatrix, QCcolor_adjustment, QCmask)
+ (Qrisky_local_variable, map_char_table_for_charset, Vprint_level)
+ (Qfunction, debug_on_next_call, Qfield)
+ (Vinhibit_field_text_motion, Vuser_login_name, lisp_time_argument)
+ (Qpriority, Qwindow, Qevaporate, Qbefore_string, Qafter_string)
+ (Qfile_directory_p, Qinsert_file_contents)
+ (Qcompletion_ignore_case, Qcompletion_ignore_case)
+ (Vcompletion_regexp_list, Vhistory_length, completion_ignore_case)
+ (history_delete_duplicates, minibuffer_auto_raise, Qonly)
+ (Qfile_name_handler_alist, Qfront_sticky, Qrear_nonsticky)
+ (Qminibuffer_prompt)
+ (Vtemporary_file_directory,char_ins_del_vector, Qface):
+ * xterm.h (gray_bitmap_width, gray_bitmap_height)
+ (gray_bitmap_bits, xic_create_fontsetname):
+ * coding.h (Vtranslation_table_for_input): Add extern declarations.
+
+ * xsmfns.c (Vuser_login_name):
+ * xrdb.c (Vdouble_click_time):
+ * xfaces.c (xic_create_fontsetname):
+ * w32select.c (waiting_for_input):
+ * print.c (minibuffer_auto_raise):
+ * msdos.c (Qhelp_echo):
+ * macros.c (real_this_command):
+ * keymap.c (Voverriding_local_map):
+ * xterm.c (poll_for_input_1, gray_bitmap_width)
+ (gray_bitmap_height, gray_bitmap_bits;
+ * xmenu.c ( Voverriding_local_map)
+ (Voverriding_local_map_menu_flag; Qmenu_item; use_dialog_box)
+ (use_file_dialog, Xt_app_con):
+ * xdisp.c (minibuffer_auto_raise, Voverriding_local_map)
+ (Voverriding_local_map_menu_flag, Qmenu_item, Qface, Qinvisible)
+ (Qwidth, Qinvisible, Qwindow, Qpriority, Qtool_bar_lines)
+ (Qtool_bar_lines, ignore_mouse_drag_p):
+ * minibuf.c (Voverriding_local_map, Qfield, Qfront_sticky)
+ (Qrear_nonsticky, nconc2):
+ * keyboard.c (current_global_map, minibuf_level, Qmenu_item)
+ (Vhistory_length, Vtranslation_table_for_input, Qcomposition)
+ (Qdisplay, Qafter_string, Qbefore_string, Qundefined):
+ * fileio.c (use_dialog_box, use_file_dialog, Vuser_login_name)
+ (minibuf_level, minibuffer_auto_raise, lisp_time_argument):
+ * eval.c (Qinteractive_form, Qrisky_local_variable, Qfunction)
+ (gc_in_progress):
+ * doc.c (Voverriding_local_map, Qremap):
+ * dired.c (completion_ignore_case, Qcompletion_ignore_case)
+ (Vcompletion_regexp_list):
+ * coding.c (Qmac, Qinsert_file_contents, Qwrite_region)
+ (Qcompletion_ignore_case):
+ * callint.c (Qcursor_in_echo_area, Qfile_directory_p, Qonly)
+ (Vhistory_length, Vthis_original_command, real_this_command)
+ (Qface, Qminibuffer_prompt, history_delete_duplicates):
+ * image.c (Qrisky_local_variable):
+ * fontset.c (QCname):
+ * fns.c (minibuffer_auto_raise, QCname):
+ * dispnew.c (char_ins_del_cost):
+ * composite.c (font_fill_lglyph_metrics):
+ * cmds.c (Qface, Vtranslation_table_for_input):
+ * charset.c (map_char_table_for_charset, Qfile_name_handler_alist):
+ * ccl.c (charset_unicode):
+ * callproc.c (Vtemporary_file_directory):
+ * buffer.c (emacs_strerror): Remove extern declarations.
+
+ * data.c (Qwindow): Make non-static, used from other files too.
+ * frame.c (validate_x_resource_name): Remove shadow definition for i.
+
* unexec.c (make_hdr): Remove references to NO_REMAP, COFF,
SEGMENT_MASK, SECTION_ALIGNMENT, ADJUST_EXEC_HEADER.
* s/usg5-4.h (COFF):
diff --git a/src/buffer.c b/src/buffer.c
index fe0d200f503..9dd396e6c08 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -174,8 +174,6 @@ static struct Lisp_Overlay * copy_overlays (struct buffer *, struct Lisp_Overlay
static void modify_overlay (struct buffer *, EMACS_INT, EMACS_INT);
static Lisp_Object buffer_lisp_local_variables (struct buffer *);
-extern char * emacs_strerror (int);
-
/* For debugging; temporary. See set_buffer_internal. */
/* Lisp_Object Qlisp_mode, Vcheck_symbol; */
diff --git a/src/callint.c b/src/callint.c
index fa0be112bea..11473c3473a 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -29,21 +29,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "window.h"
#include "keymap.h"
-extern Lisp_Object Qcursor_in_echo_area;
-extern Lisp_Object Qfile_directory_p;
-extern Lisp_Object Qonly;
-
Lisp_Object Vcurrent_prefix_arg, Qminus, Qplus;
Lisp_Object Qcall_interactively;
Lisp_Object Vcommand_history;
-extern Lisp_Object Vhistory_length;
-extern Lisp_Object Vthis_original_command, real_this_command;
-extern int history_delete_duplicates;
-
Lisp_Object Vcommand_debug_status, Qcommand_debug_status;
Lisp_Object Qenable_recursive_minibuffers;
-extern Lisp_Object Qface, Qminibuffer_prompt;
/* Non-nil means treat the mark as active
even if mark_active is 0. */
diff --git a/src/callproc.c b/src/callproc.c
index 7019d741b34..ca9ff93a6d9 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -102,8 +102,6 @@ Lisp_Object Vconfigure_info_directory, Vshared_game_score_directory;
/* Pattern used by call-process-region to make temp files. */
static Lisp_Object Vtemp_file_name_pattern;
-extern Lisp_Object Vtemporary_file_directory;
-
Lisp_Object Vshell_file_name;
Lisp_Object Vprocess_environment, Vinitial_environment;
diff --git a/src/ccl.c b/src/ccl.c
index b5a4f26197c..f418c65b01e 100644
--- a/src/ccl.c
+++ b/src/ccl.c
@@ -72,8 +72,6 @@ Lisp_Object Vtranslation_hash_table_vector;
#define GET_HASH_TABLE(id) \
(XHASH_TABLE (XCDR(XVECTOR(Vtranslation_hash_table_vector)->contents[(id)])))
-extern int charset_unicode;
-
/* CCL (Code Conversion Language) is a simple language which has
operations on one input buffer, one output buffer, and 7 registers.
The syntax of CCL is described in `ccl.el'. Emacs Lisp function
diff --git a/src/charset.c b/src/charset.c
index 578c05a1d47..7aef84cb0aa 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -127,13 +127,6 @@ int inhibit_load_charset_map;
Lisp_Object Vcurrent_iso639_language;
-/* Defined in chartab.c */
-extern void
-map_char_table_for_charset (void (*c_function) (Lisp_Object, Lisp_Object),
- Lisp_Object function, Lisp_Object table,
- Lisp_Object arg, struct charset *charset,
- unsigned from, unsigned to);
-
#define CODE_POINT_TO_INDEX(charset, code) \
((charset)->code_linear_p \
? (code) - (charset)->min_code \
@@ -472,8 +465,6 @@ read_hex (FILE *fp, int *eof)
return n;
}
-extern Lisp_Object Qfile_name_handler_alist;
-
/* Return a mapping vector for CHARSET loaded from MAPFILE.
Each line of MAPFILE has this form
0xAAAA 0xCCCC
diff --git a/src/cmds.c b/src/cmds.c
index 2b686a44d87..7d54f46aeb4 100644
--- a/src/cmds.c
+++ b/src/cmds.c
@@ -43,9 +43,6 @@ Lisp_Object Vself_insert_face;
/* This is the command that set up Vself_insert_face. */
Lisp_Object Vself_insert_face_command;
-extern Lisp_Object Qface;
-extern Lisp_Object Vtranslation_table_for_input;
-
static int internal_self_insert (int, int);
DEFUN ("forward-point", Fforward_point, Sforward_point, 1, 1, 0,
diff --git a/src/coding.c b/src/coding.c
index dcd31fe9f28..32d1c64afbe 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -303,7 +303,6 @@ Lisp_Object Vcoding_system_hash_table;
Lisp_Object Qcoding_system, Qcoding_aliases, Qeol_type;
Lisp_Object Qunix, Qdos;
-extern Lisp_Object Qmac; /* frame.c */
Lisp_Object Qbuffer_file_coding_system;
Lisp_Object Qpost_read_conversion, Qpre_write_conversion;
Lisp_Object Qdefault_char;
@@ -317,7 +316,6 @@ Lisp_Object QCdecode_translation_table, QCencode_translation_table;
Lisp_Object QCpost_read_conversion, QCpre_write_conversion;
Lisp_Object QCascii_compatible_p;
-extern Lisp_Object Qinsert_file_contents, Qwrite_region;
Lisp_Object Qcall_process, Qcall_process_region;
Lisp_Object Qstart_process, Qopen_network_stream;
Lisp_Object Qtarget_idx;
@@ -325,8 +323,6 @@ Lisp_Object Qtarget_idx;
Lisp_Object Qinsufficient_source, Qinconsistent_eol, Qinvalid_source;
Lisp_Object Qinterrupted, Qinsufficient_memory;
-extern Lisp_Object Qcompletion_ignore_case;
-
/* If a symbol has this property, evaluate the value to define the
symbol as a coding system. */
static Lisp_Object Qcoding_system_define_form;
diff --git a/src/coding.h b/src/coding.h
index 75ed84bef71..0caa5b2f96f 100644
--- a/src/coding.h
+++ b/src/coding.h
@@ -802,6 +802,9 @@ extern struct coding_system safe_terminal_coding;
/* Default coding systems used for process I/O. */
extern Lisp_Object Vdefault_process_coding_system;
+/* Char table for translating Quail and self-inserting input. */
+extern Lisp_Object Vtranslation_table_for_input;
+
/* Function to call to force a user to force select a propert coding
system. */
extern Lisp_Object Vselect_safe_coding_system_function;
diff --git a/src/composite.c b/src/composite.c
index dbd7e3d1715..392da1ceba1 100644
--- a/src/composite.c
+++ b/src/composite.c
@@ -848,8 +848,6 @@ fill_gstring_header (Lisp_Object header, Lisp_Object start, Lisp_Object end, Lis
return header;
}
-extern void font_fill_lglyph_metrics (Lisp_Object, Lisp_Object);
-
static void
fill_gstring_body (Lisp_Object gstring)
{
diff --git a/src/data.c b/src/data.c
index 5c7a5deba2b..69f6cc34c29 100644
--- a/src/data.c
+++ b/src/data.c
@@ -82,7 +82,8 @@ Lisp_Object Qnumberp, Qnumber_or_marker_p;
Lisp_Object Qinteger;
static Lisp_Object Qsymbol, Qstring, Qcons, Qmarker, Qoverlay;
-static Lisp_Object Qfloat, Qwindow_configuration, Qwindow;
+Lisp_Object Qwindow;
+static Lisp_Object Qfloat, Qwindow_configuration;
Lisp_Object Qprocess;
static Lisp_Object Qcompiled_function, Qbuffer, Qframe, Qvector;
static Lisp_Object Qchar_table, Qbool_vector, Qhash_table;
diff --git a/src/dired.c b/src/dired.c
index 5006d60deab..aec64f94379 100644
--- a/src/dired.c
+++ b/src/dired.c
@@ -102,9 +102,6 @@ extern void filemodestring (struct stat *, char *);
#define lstat stat
#endif
-extern int completion_ignore_case;
-extern Lisp_Object Qcompletion_ignore_case;
-extern Lisp_Object Vcompletion_regexp_list;
extern Lisp_Object Vw32_get_true_file_attributes;
Lisp_Object Vcompletion_ignored_extensions;
diff --git a/src/dispnew.c b/src/dispnew.c
index 0b332c18a76..52d50186939 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -5030,7 +5030,6 @@ count_match (struct glyph *str1, struct glyph *end1, struct glyph *str2, struct
/* Char insertion/deletion cost vector, from term.c */
-extern int *char_ins_del_vector;
#define char_ins_del_cost(f) (&char_ins_del_vector[FRAME_TOTAL_COLS((f))])
diff --git a/src/doc.c b/src/doc.c
index fc3cbc1c215..9a7001eb01d 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -52,10 +52,6 @@ Lisp_Object Qfunction_documentation;
/* A list of files used to build this Emacs binary. */
static Lisp_Object Vbuild_files;
-extern Lisp_Object Voverriding_local_map;
-
-extern Lisp_Object Qremap;
-
/* Buffer used for reading from documentation file. */
static char *get_doc_string_buffer;
static int get_doc_string_buffer_size;
diff --git a/src/eval.c b/src/eval.c
index 06888ca0dd4..467662a11d8 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -63,7 +63,6 @@ Lisp_Object Qand_rest, Qand_optional;
Lisp_Object Qdebug_on_error;
Lisp_Object Qdeclare;
Lisp_Object Qdebug;
-extern Lisp_Object Qinteractive_form;
/* This holds either the symbol `run-hooks' or nil.
It is nil at an early stage of startup, and when Emacs
@@ -166,10 +165,6 @@ int handling_signal;
Lisp_Object Vmacro_declaration_function;
-extern Lisp_Object Qrisky_local_variable;
-
-extern Lisp_Object Qfunction;
-
static Lisp_Object funcall_lambda (Lisp_Object, int, Lisp_Object*);
static void unwind_to_catch (struct catchtag *, Lisp_Object) NO_RETURN;
@@ -1634,7 +1629,6 @@ See also the function `condition-case'. */)
That is a special case--don't do this in other situations. */
register struct handler *allhandlers = handlerlist;
Lisp_Object conditions;
- extern int gc_in_progress;
extern int waiting_for_input;
Lisp_Object string;
Lisp_Object real_error_symbol;
diff --git a/src/fileio.c b/src/fileio.c
index c942803e280..6d9ac162b93 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -104,8 +104,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#endif
#include "commands.h"
-extern int use_dialog_box;
-extern int use_file_dialog;
#ifndef O_WRONLY
#define O_WRONLY 1
@@ -214,16 +212,10 @@ Lisp_Object Qcopy_directory;
/* Lisp function for recursively deleting directories. */
Lisp_Object Qdelete_directory;
-extern Lisp_Object Vuser_login_name;
-
#ifdef WINDOWSNT
extern Lisp_Object Vw32_get_true_file_attributes;
#endif
-extern int minibuf_level;
-
-extern int minibuffer_auto_raise;
-
/* These variables describe handlers that have "already" had a chance
to handle the current operation.
@@ -3049,7 +3041,6 @@ The value is an integer. */)
return value;
}
-extern int lisp_time_argument (Lisp_Object, time_t *, int *);
DEFUN ("set-file-times", Fset_file_times, Sset_file_times, 1, 2, 0,
doc: /* Set times of file FILENAME to TIME.
diff --git a/src/fns.c b/src/fns.c
index 3d4c07aad3a..63bcc9c86de 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -61,7 +61,6 @@ int use_dialog_box;
questions asked by mouse commands. */
int use_file_dialog;
-extern int minibuffer_auto_raise;
extern Lisp_Object minibuf_window;
extern Lisp_Object Vlocale_coding_system;
extern int load_in_progress;
diff --git a/src/fontset.c b/src/fontset.c
index 9a27fc3e36b..ebfbe7a802f 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -1457,7 +1457,6 @@ appended. By default, FONT-SPEC overrides the previous settings. */)
else if (STRINGP (font_spec))
{
Lisp_Object args[2];
- extern Lisp_Object QCname;
fontname = font_spec;
args[0] = QCname;
diff --git a/src/frame.c b/src/frame.c
index ea300bdb16b..ae8fdff807d 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -3670,7 +3670,6 @@ validate_x_resource_name (void)
if (STRINGP (Vx_resource_name))
{
unsigned char *p = SDATA (Vx_resource_name);
- int i;
len = SBYTES (Vx_resource_name);
diff --git a/src/frame.h b/src/frame.h
index 54b4c89d304..04b754d4a5e 100644
--- a/src/frame.h
+++ b/src/frame.h
@@ -1063,7 +1063,6 @@ extern Lisp_Object Qalpha;
extern Lisp_Object Qleft_fringe, Qright_fringe;
extern Lisp_Object Qheight, Qwidth;
extern Lisp_Object Qminibuffer, Qmodeline;
-extern Lisp_Object Qonly;
extern Lisp_Object Qx, Qw32, Qmac, Qpc, Qns;
extern Lisp_Object Qvisible;
extern Lisp_Object Qdisplay_type;
diff --git a/src/image.c b/src/image.c
index b628aab2fbc..f6282f6619b 100644
--- a/src/image.c
+++ b/src/image.c
@@ -8130,8 +8130,6 @@ of `image-library-alist', which see). */)
void
syms_of_image (void)
{
- extern Lisp_Object Qrisky_local_variable; /* Syms_of_xdisp has already run. */
-
/* Initialize this only once, since that's what we do with Vimage_types
and they are supposed to be in sync. Initializing here gives correct
operation on GNU/Linux of calling dump-emacs after loading some images. */
diff --git a/src/keyboard.c b/src/keyboard.c
index 7d6ada2c28d..2cc7f407d62 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -246,9 +246,6 @@ Lisp_Object Vminibuffer_message_timeout;
ASCII character. */
int quit_char;
-extern Lisp_Object current_global_map;
-extern int minibuf_level;
-
/* If non-nil, this is a map that overrides all other local maps. */
Lisp_Object Voverriding_local_map;
@@ -497,7 +494,6 @@ Lisp_Object Qevent_symbol_elements;
Lisp_Object Qmenu_enable;
Lisp_Object QCenable, QCvisible, QChelp, QCfilter, QCkeys, QCkey_sequence;
Lisp_Object QCbutton, QCtoggle, QCradio, QClabel;
-extern Lisp_Object Qmenu_item;
/* An event header symbol HEAD may have a property named
Qevent_symbol_element_mask, which is of the form (BASE MODIFIERS);
@@ -526,8 +522,6 @@ Lisp_Object Fthis_command_keys (void);
Lisp_Object Qextended_command_history;
EMACS_TIME timer_check (int do_it_now);
-extern Lisp_Object Vhistory_length, Vtranslation_table_for_input;
-
static void record_menu_key (Lisp_Object c);
static int echo_length (void);
@@ -1836,14 +1830,11 @@ command_loop_1 (void)
}
}
-extern Lisp_Object Qcomposition, Qdisplay;
-
/* Adjust point to a boundary of a region that has such a property
that should be treated intangible. For the moment, we check
`composition', `display' and `invisible' properties.
LAST_PT is the last position of point. */
-extern Lisp_Object Qafter_string, Qbefore_string;
extern Lisp_Object get_pos_property (Lisp_Object, Lisp_Object, Lisp_Object);
static void
@@ -8116,7 +8107,6 @@ static void
process_tool_bar_item (Lisp_Object key, Lisp_Object def, Lisp_Object data, void *args)
{
int i;
- extern Lisp_Object Qundefined;
struct gcpro gcpro1, gcpro2;
/* Protect KEY and DEF from GC because parse_tool_bar_item may call
diff --git a/src/keyboard.h b/src/keyboard.h
index 648b1501406..7a04cf0425f 100644
--- a/src/keyboard.h
+++ b/src/keyboard.h
@@ -422,6 +422,8 @@ extern Lisp_Object Qevent_kind, Qevent_symbol_elements;
extern Lisp_Object Qfunction_key, Qmouse_click, Qmouse_movement;
extern Lisp_Object Qscroll_bar_movement;
+extern Lisp_Object Qhelp_echo;
+
/* Getting the kind of an event head. */
#define EVENT_HEAD_KIND(event_head) \
(Fget ((event_head), Qevent_kind))
@@ -429,6 +431,17 @@ extern Lisp_Object Qscroll_bar_movement;
/* Symbols to use for non-text mouse positions. */
extern Lisp_Object Qmode_line, Qvertical_line, Qheader_line;
+/* True while doing kbd input. */
+extern int waiting_for_input;
+
+/* Address (if not 0) of EMACS_TIME to zero out if a SIGIO interrupt
+ happens. */
+extern EMACS_TIME *input_available_clear_time;
+
+extern int ignore_mouse_drag_p;
+
+extern Lisp_Object Vdouble_click_time;
+
/* Forward declaration for prototypes. */
struct input_event;
@@ -445,6 +458,13 @@ extern Lisp_Object Vfunction_key_map;
/* Keymap of key translations that can override keymaps. */
extern Lisp_Object Vkey_translation_map;
+/* This is like Vthis_command, except that commands never set it. */
+extern Lisp_Object real_this_command;
+
+/* If the lookup of the command returns a binding, the original
+ command is stored in this-original-command. It is nil otherwise. */
+extern Lisp_Object Vthis_original_command;
+
extern int parse_menu_item (Lisp_Object, int);
extern void echo_now (void);
diff --git a/src/keymap.c b/src/keymap.c
index 8a0c855e0dc..a92c085793f 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -108,8 +108,6 @@ static Lisp_Object command_remapping_vector;
character. */
extern Lisp_Object meta_prefix_char;
-extern Lisp_Object Voverriding_local_map;
-
/* 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. */
diff --git a/src/keymap.h b/src/keymap.h
index 024b03dd1c3..b8f8ec4ffd2 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -22,6 +22,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define KEYMAPP(m) (!NILP (get_keymap (m, 0, 0)))
extern Lisp_Object Qkeymap, Qmenu_bar;
+extern Lisp_Object Qremap;
+extern Lisp_Object Qmenu_item;
+extern Lisp_Object Voverriding_local_map;
+extern Lisp_Object Voverriding_local_map_menu_flag;
extern Lisp_Object current_global_map;
EXFUN (Fmake_sparse_keymap, 1);
EXFUN (Fkeymap_prompt, 1);
diff --git a/src/lisp.h b/src/lisp.h
index b9d67c4b78e..06a8b672fba 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -2269,6 +2269,7 @@ extern Lisp_Object Qinvalid_function, Qwrong_number_of_arguments, Qno_catch;
extern Lisp_Object Qend_of_file, Qarith_error, Qmark_inactive;
extern Lisp_Object Qbeginning_of_buffer, Qend_of_buffer, Qbuffer_read_only;
extern Lisp_Object Qtext_read_only;
+extern Lisp_Object Qinteractive_form;
extern Lisp_Object Qintegerp, Qnatnump, Qwholenump, Qsymbolp, Qlistp, Qconsp;
extern Lisp_Object Qstringp, Qarrayp, Qsequencep, Qbufferp;
@@ -2449,9 +2450,11 @@ extern void syms_of_syntax (void);
/* Defined in fns.c */
extern int use_dialog_box;
+extern int use_file_dialog;
extern int next_almost_prime (int);
extern Lisp_Object larger_vector (Lisp_Object, int, Lisp_Object);
extern void sweep_weak_hash_tables (void);
+extern Lisp_Object Qcursor_in_echo_area;
extern Lisp_Object Qstring_lessp;
extern Lisp_Object Vfeatures;
extern Lisp_Object QCsize, QCtest, QCweakness, Qequal, Qeq;
@@ -2558,6 +2561,9 @@ extern void init_fringe (void);
extern void init_fringe_once (void);
/* Defined in image.c */
+extern Lisp_Object QCascent, QCmargin, QCrelief, Qcount, Qextension_data;
+extern Lisp_Object QCconversion, QCcolor_symbols, QCheuristic_mask;
+extern Lisp_Object QCindex, QCmatrix, QCcolor_adjustment, QCmask;
EXFUN (Finit_image_library, 2);
extern void syms_of_image (void);
extern void init_image (void);
@@ -2635,6 +2641,7 @@ extern Lisp_Object Qimage, Qtext, Qboth, Qboth_horiz, Qtext_image_horiz;
extern Lisp_Object Qspace, Qcenter, QCalign_to;
extern Lisp_Object Vmessage_log_max;
extern Lisp_Object QCdata, QCfile;
+extern Lisp_Object Qrisky_local_variable;
extern int message_enable_multibyte;
extern Lisp_Object echo_area_buffer[2];
extern void add_to_log (const char *, Lisp_Object, Lisp_Object);
@@ -2774,10 +2781,15 @@ extern int char_table_translate (Lisp_Object, int);
extern void map_char_table (void (*) (Lisp_Object, Lisp_Object,
Lisp_Object),
Lisp_Object, Lisp_Object, Lisp_Object);
+extern void map_char_table_for_charset (void (*c_function) (Lisp_Object, Lisp_Object),
+ Lisp_Object, Lisp_Object,
+ Lisp_Object, struct charset *,
+ unsigned, unsigned);
extern void syms_of_chartab (void);
/* Defined in print.c */
extern Lisp_Object Vprin1_to_string_buffer;
+extern Lisp_Object Vprint_level;
extern void debug_print (Lisp_Object);
EXFUN (Fprin1, 2);
EXFUN (Fprin1_to_string, 2);
@@ -2804,6 +2816,7 @@ extern int doprnt (char *, int, const char *, const char *, va_list);
/* Defined in lread.c */
extern Lisp_Object Qvariable_documentation, Qstandard_input;
+extern Lisp_Object Qfunction;
extern Lisp_Object Vobarray, initial_obarray, Vstandard_input;
EXFUN (Fread, 1);
EXFUN (Fread_from_string, 3);
@@ -2845,6 +2858,7 @@ extern Lisp_Object Vautoload_queue;
extern Lisp_Object Vdebug_on_error;
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.
@@ -2925,6 +2939,9 @@ extern void init_eval (void);
extern void syms_of_eval (void);
/* Defined in editfns.c */
+extern Lisp_Object Qfield;
+extern Lisp_Object Vinhibit_field_text_motion;
+extern Lisp_Object Vuser_login_name;
EXFUN (Fpropertize, MANY);
EXFUN (Fcurrent_message, 0);
EXFUN (Fgoto_char, 1);
@@ -2971,7 +2988,6 @@ extern Lisp_Object make_buffer_string (int, int, int);
extern Lisp_Object make_buffer_string_both (int, int, int, int, int);
extern void init_editfns (void);
extern void syms_of_editfns (void);
-extern Lisp_Object Vinhibit_field_text_motion;
EXFUN (Fconstrain_to_field, 5);
EXFUN (Ffield_string, 1);
EXFUN (Fdelete_field, 1);
@@ -2979,6 +2995,7 @@ EXFUN (Ffield_beginning, 3);
EXFUN (Ffield_end, 3);
EXFUN (Ffield_string_no_properties, 1);
extern void set_time_zone_rule (const char *);
+extern int lisp_time_argument (Lisp_Object, time_t *, int *);
/* Defined in buffer.c */
extern int mouse_face_overlay_overlaps (Lisp_Object);
@@ -3013,7 +3030,7 @@ EXFUN (Fbuffer_disable_undo, 1);
EXFUN (Fbuffer_enable_undo, 1);
EXFUN (Ferase_buffer, 0);
extern Lisp_Object Qoverlayp;
-extern Lisp_Object Qevaporate;
+extern Lisp_Object Qpriority, Qwindow, Qevaporate, Qbefore_string, Qafter_string;
extern Lisp_Object get_truename_buffer (Lisp_Object);
extern struct buffer *all_buffers;
EXFUN (Fprevious_overlay_change, 1);
@@ -3045,6 +3062,8 @@ extern void syms_of_marker (void);
/* Defined in fileio.c */
extern Lisp_Object Qfile_error;
+extern Lisp_Object Qfile_directory_p;
+extern Lisp_Object Qinsert_file_contents;
EXFUN (Ffind_file_name_handler, 2);
EXFUN (Ffile_name_as_directory, 1);
EXFUN (Fmake_temp_name, 1);
@@ -3104,7 +3123,14 @@ extern void clear_regexp_cache (void);
/* Defined in minibuf.c */
+extern Lisp_Object Qcompletion_ignore_case;
+extern Lisp_Object Qcompletion_ignore_case;
+extern Lisp_Object Vcompletion_regexp_list;
+extern Lisp_Object Vhistory_length;
extern Lisp_Object last_minibuf_string;
+extern int completion_ignore_case;
+extern int history_delete_duplicates;
+extern int minibuffer_auto_raise;
extern void choose_minibuf_frame (void);
EXFUN (Fcompleting_read, 8);
EXFUN (Fread_from_minibuffer, 7);
@@ -3206,6 +3232,7 @@ extern void syms_of_indent (void);
extern Lisp_Object Vx_resource_name;
extern Lisp_Object Vx_resource_class;
#endif /* HAVE_WINDOW_SYSTEM */
+extern Lisp_Object Qonly;
extern Lisp_Object Qvisible;
extern void store_frame_param (struct frame *, Lisp_Object, Lisp_Object);
extern void store_in_alist (Lisp_Object *, Lisp_Object, Lisp_Object);
@@ -3253,6 +3280,7 @@ extern Lisp_Object Vinvocation_name, Vinvocation_directory;
extern Lisp_Object Vbefore_init_time, Vafter_init_time;
extern Lisp_Object Vinstallation_directory;
extern Lisp_Object empty_unibyte_string, empty_multibyte_string;
+extern Lisp_Object Qfile_name_handler_alist;
EXFUN (Fkill_emacs, 1) NO_RETURN;
#if HAVE_SETLOCALE
void fixup_locale (void);
@@ -3359,6 +3387,9 @@ extern Lisp_Object Vundo_outer_limit;
/* Defined in textprop.c */
extern Lisp_Object Qfont, Qmouse_face;
extern Lisp_Object Qinsert_in_front_hooks, Qinsert_behind_hooks;
+extern Lisp_Object Qfront_sticky, Qrear_nonsticky;
+extern Lisp_Object Qminibuffer_prompt;
+
EXFUN (Fnext_single_property_change, 4);
EXFUN (Fnext_single_char_property_change, 4);
EXFUN (Fprevious_single_property_change, 4);
@@ -3424,6 +3455,7 @@ extern int memcmp (void *, void *, size_t);
#endif
/* 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);
@@ -3453,6 +3485,7 @@ extern Lisp_Object directory_files_internal (Lisp_Object, Lisp_Object,
int, Lisp_Object);
/* Defined in term.c */
+extern int *char_ins_del_vector;
extern void syms_of_term (void);
extern void fatal (const char *msgid, ...) NO_RETURN;
@@ -3478,6 +3511,7 @@ EXFUN (Fx_focus_frame, 1);
#endif
/* Defined in xfaces.c */
+extern Lisp_Object Qface;
extern Lisp_Object Qnormal;
extern Lisp_Object QCfamily, QCweight, QCslant, QCwidth;
extern Lisp_Object QCheight, QCsize, QCname, QCwidth, QCforeground, QCbackground;
diff --git a/src/macros.c b/src/macros.c
index 0e0d3f3597e..c281c89aa3e 100644
--- a/src/macros.c
+++ b/src/macros.c
@@ -51,8 +51,6 @@ int executing_kbd_macro_iterations;
Lisp_Object executing_kbd_macro;
-extern Lisp_Object real_this_command;
-
Lisp_Object Fexecute_kbd_macro (Lisp_Object macro, Lisp_Object count, Lisp_Object loopfunc);
DEFUN ("start-kbd-macro", Fstart_kbd_macro, Sstart_kbd_macro, 1, 2, "P",
diff --git a/src/minibuf.c b/src/minibuf.c
index d95af7db949..863b7aeee61 100644
--- a/src/minibuf.c
+++ b/src/minibuf.c
@@ -143,9 +143,6 @@ Lisp_Object Qcase_fold_search;
Lisp_Object Qread_expression_history;
-extern Lisp_Object Voverriding_local_map;
-
-extern Lisp_Object Qfield;
/* Put minibuf on currently selected frame's minibuffer.
We do this whenever the user starts a new minibuffer
@@ -442,9 +439,6 @@ read_minibuf (Lisp_Object map, Lisp_Object initial, Lisp_Object prompt,
Lisp_Object empty_minibuf;
Lisp_Object dummy, frame;
- extern Lisp_Object Qfront_sticky;
- extern Lisp_Object Qrear_nonsticky;
-
specbind (Qminibuffer_default, defalt);
/* If Vminibuffer_completing_file_name is `lambda' on entry, it was t
@@ -822,7 +816,6 @@ get_minibuffer (int depth)
{
Lisp_Object tail, num, buf;
char name[24];
- extern Lisp_Object nconc2 (Lisp_Object, Lisp_Object);
XSETFASTINT (num, depth);
tail = Fnthcdr (num, Vminibuffer_list);
diff --git a/src/msdos.c b/src/msdos.c
index 6985002aaa1..dda24cc868f 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -1191,7 +1191,6 @@ IT_note_mode_line_highlight (struct window *w, int x, int mode_line_p)
if (row->enabled_p)
{
- extern Lisp_Object Qhelp_echo;
struct glyph *glyph, *end;
Lisp_Object help, map;
diff --git a/src/print.c b/src/print.c
index 97f6494678f..7a90e6cd96e 100644
--- a/src/print.c
+++ b/src/print.c
@@ -166,8 +166,6 @@ Lisp_Object Vprint_number_table;
extern int noninteractive_need_newline;
-extern int minibuffer_auto_raise;
-
void print_interval (INTERVAL interval, Lisp_Object printcharfun);
/* GDB resets this to zero on W32 to disable OutputDebugString calls. */
diff --git a/src/w32select.c b/src/w32select.c
index 8482d3331ff..bd013a5ece9 100644
--- a/src/w32select.c
+++ b/src/w32select.c
@@ -398,7 +398,6 @@ run_protected (Lisp_Object (*code) (Lisp_Object), Lisp_Object arg)
with global variables and calling strange looking functions. Is
this really the right way to run Lisp callbacks? */
- extern int waiting_for_input;
int owfi;
BLOCK_INPUT;
diff --git a/src/xdisp.c b/src/xdisp.c
index cd088f0aa1d..3274a48294f 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -276,15 +276,11 @@ extern void set_frame_menubar (struct frame *f, int, int);
extern int interrupt_input;
extern int command_loop_level;
-extern int minibuffer_auto_raise;
extern Lisp_Object Vminibuffer_list;
extern Lisp_Object Qface;
extern Lisp_Object Qmode_line, Qmode_line_inactive, Qheader_line;
-extern Lisp_Object Voverriding_local_map;
-extern Lisp_Object Voverriding_local_map_menu_flag;
-extern Lisp_Object Qmenu_item;
extern Lisp_Object Qwhen;
extern Lisp_Object Qhelp_echo;
extern Lisp_Object Qbefore_string, Qafter_string;
@@ -379,7 +375,6 @@ int inhibit_eval_during_redisplay;
/* Names of text properties relevant for redisplay. */
Lisp_Object Qdisplay;
-extern Lisp_Object Qface, Qinvisible, Qwidth;
/* Symbols used in text property values. */
@@ -3689,7 +3684,6 @@ handle_invisible_prop (struct it *it)
if (STRINGP (it->string))
{
- extern Lisp_Object Qinvisible;
Lisp_Object prop, end_charpos, limit, charpos;
/* Get the value of the invisible text property at the
@@ -4873,7 +4867,6 @@ compare_overlay_entries (const void *e1, const void *e2)
static void
load_overlay_strings (struct it *it, int charpos)
{
- extern Lisp_Object Qwindow, Qpriority;
Lisp_Object overlay, window, str, invisible;
struct Lisp_Overlay *ov;
int start, end;
@@ -10585,7 +10578,6 @@ redisplay_tool_bar (struct frame *f)
if ((nlines = tool_bar_lines_needed (f, &f->n_tool_bar_rows),
nlines != WINDOW_TOTAL_LINES (w)))
{
- extern Lisp_Object Qtool_bar_lines;
Lisp_Object frame;
int old_height = WINDOW_TOTAL_LINES (w);
@@ -10677,7 +10669,6 @@ redisplay_tool_bar (struct frame *f)
frame parameter. */
if (change_height_p)
{
- extern Lisp_Object Qtool_bar_lines;
Lisp_Object frame;
int old_height = WINDOW_TOTAL_LINES (w);
int nrows;
@@ -14485,7 +14476,6 @@ redisplay_window (Lisp_Object window, int just_this_one_p)
if (redisplay_tool_bar_p && redisplay_tool_bar (f))
{
- extern int ignore_mouse_drag_p;
ignore_mouse_drag_p = 1;
}
}
diff --git a/src/xfaces.c b/src/xfaces.c
index 259ee154012..8d88281d43e 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -3666,8 +3666,6 @@ x_update_menu_appearance (struct frame *f)
if (! NILP (xlfd))
{
#if defined HAVE_X_I18N
- extern char *xic_create_fontsetname
- (char *base_fontname, Bool motif);
char *fontsetname = xic_create_fontsetname (SDATA (xlfd), motif);
#else
char *fontsetname = (char *) SDATA (xlfd);
diff --git a/src/xfns.c b/src/xfns.c
index 0d468ebc919..f19498dfb87 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -1901,12 +1901,12 @@ static XIMStyle supported_xim_styles[] =
/* Create an X fontset on frame F with base font name BASE_FONTNAME. */
-char xic_defaut_fontset[] = "-*-*-*-r-normal--14-*-*-*-*-*-*-*";
+const char xic_defaut_fontset[] = "-*-*-*-r-normal--14-*-*-*-*-*-*-*";
/* Create an Xt fontset spec from the name of a base font.
If `motif' is True use the Motif syntax. */
char *
-xic_create_fontsetname (char *base_fontname, int motif)
+xic_create_fontsetname (const char *base_fontname, int motif)
{
const char *sep = motif ? ";" : ",";
char *fontsetname;
@@ -1926,7 +1926,7 @@ xic_create_fontsetname (char *base_fontname, int motif)
- the base font.
- the base font where the charset spec is replaced by -*-*.
- the same but with the family also replaced with -*-*-. */
- char *p = base_fontname;
+ const char *p = base_fontname;
int i;
for (i = 0; *p; p++)
@@ -1945,13 +1945,13 @@ xic_create_fontsetname (char *base_fontname, int motif)
else
{
int len;
- char *p1 = NULL, *p2 = NULL, *p3 = NULL;
+ const char *p1 = NULL, *p2 = NULL, *p3 = NULL;
char *font_allcs = NULL;
char *font_allfamilies = NULL;
char *font_all = NULL;
- char *allcs = "*-*-*-*-*-*-*";
- char *allfamilies = "-*-*-";
- char *all = "*-*-*-*-";
+ const char *allcs = "*-*-*-*-*-*-*";
+ const char *allfamilies = "-*-*-";
+ const char *all = "*-*-*-*-";
char *base;
for (i = 0, p = base_fontname; i < 8; p++)
@@ -2080,7 +2080,7 @@ xic_create_xfontset (struct frame *f)
char **missing_list;
int missing_count;
char *def_string;
- char *xlfd_format = "-*-*-medium-r-normal--%d-*-*-*-*-*";
+ const char *xlfd_format = "-*-*-medium-r-normal--%d-*-*-*-*-*";
sprintf (buf, xlfd_format, pixel_size);
missing_list = NULL;
@@ -5239,9 +5239,6 @@ DEFUN ("x-uses-old-gtk-dialog", Fx_uses_old_gtk_dialog,
(void)
{
#ifdef USE_GTK
- extern int use_dialog_box;
- extern int use_file_dialog;
-
if (use_dialog_box
&& use_file_dialog
&& have_menus_p ()
@@ -5312,7 +5309,6 @@ or directory must exist. ONLY-DIR-P is ignored." */)
Widget dialog, text, help;
Arg al[10];
int ac = 0;
- extern XtAppContext Xt_app_con;
XmString dir_xmstring, pattern_xmstring;
int count = SPECPDL_INDEX ();
struct gcpro gcpro1, gcpro2, gcpro3, gcpro4, gcpro5, gcpro6;
diff --git a/src/xmenu.c b/src/xmenu.c
index 9163f7c31da..a04eb2502b3 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -113,9 +113,6 @@ extern Lisp_Object Qmenu_bar;
extern Lisp_Object QCtoggle, QCradio;
-extern Lisp_Object Voverriding_local_map;
-extern Lisp_Object Voverriding_local_map_menu_flag;
-
extern Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map;
extern Lisp_Object Qmenu_bar_update_hook;
@@ -2209,7 +2206,6 @@ static struct frame *menu_help_frame;
static void
menu_help_callback (char *help_string, int pane, int item)
{
- extern Lisp_Object Qmenu_item;
Lisp_Object *first_item;
Lisp_Object pane_name;
Lisp_Object menu_object;
diff --git a/src/xrdb.c b/src/xrdb.c
index 9c814b01027..39637b04081 100644
--- a/src/xrdb.c
+++ b/src/xrdb.c
@@ -508,7 +508,6 @@ x_load_resources (Display *display, const char *xrm_string,
#ifdef USE_MOTIF
const char *courier = "-*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-1";
- extern Lisp_Object Vdouble_click_time;
#endif
x_rm_string = XrmStringToQuark (XrmStringType);
diff --git a/src/xsmfns.c b/src/xsmfns.c
index cb3773f7c40..0096110bd46 100644
--- a/src/xsmfns.c
+++ b/src/xsmfns.c
@@ -45,10 +45,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Avoid "differ in sign" warnings */
#define SSDATA(x) ((char *) SDATA (x))
-/* The user login name. */
-
-extern Lisp_Object Vuser_login_name;
-
/* This is the event used when SAVE_SESSION_EVENT occurs. */
static struct input_event emacs_event;
diff --git a/src/xterm.c b/src/xterm.c
index d4a6885be43..e51c1fad837 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -9010,7 +9010,6 @@ x_make_frame_visible (struct frame *f)
/* It could be confusing if a real alarm arrives while
processing the fake one. Turn it off and let the
handler reset it. */
- extern void poll_for_input_1 (void);
int old_poll_suppress_count = poll_suppress_count;
poll_suppress_count = 1;
poll_for_input_1 ();
@@ -10139,8 +10138,6 @@ x_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name)
dpyinfo->connection = connection;
{
- extern int gray_bitmap_width, gray_bitmap_height;
- extern char *gray_bitmap_bits;
dpyinfo->gray
= XCreatePixmapFromBitmapData (dpyinfo->display, dpyinfo->root_window,
gray_bitmap_bits,
diff --git a/src/xterm.h b/src/xterm.h
index d9215d5ea23..cfc786632e5 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -933,6 +933,8 @@ 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;
+extern char *gray_bitmap_bits;
/* From xrdb.c. */
@@ -1053,6 +1055,7 @@ extern void x_sync (struct frame *);
extern int x_defined_color (struct frame *, const char *, XColor *, int);
#ifdef HAVE_X_I18N
extern void free_frame_xic (struct frame *);
+extern char * xic_create_fontsetname (const char *base_fontname, int motif);
#endif
extern void x_set_tool_bar_lines (struct frame *, Lisp_Object, Lisp_Object);