unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: Type of max_specpdl_size and max_lisp_eval_depth
       [not found]   ` <jebsg3idtl.fsf@sykes.suse.de>
@ 2002-02-12 19:40     ` Stefan Monnier
  2002-02-14  3:12       ` Richard Stallman
  0 siblings, 1 reply; 7+ messages in thread
From: Stefan Monnier @ 2002-02-12 19:40 UTC (permalink / raw


> "Stefan Monnier" <monnier+gnu/emacs@RUM.cs.yale.edu> writes:
> |> > The change below undoes the opposite change by Stefan, made just a
> |> > few weeks ago.  FWIW, I think what Stefan did was right, but perhaps
> |> > I'm missing something.  Andreas, could you please explain the reason
> |> > for the change?
> |> > 
> |> > 2002-01-01  Andreas Schwab  <schwab@suse.de>
> |> > 
> |> > 	* eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
> |> > 	not EMACS_INT, to make them compatible with DEFVAR_INT.
> |> 
> |> Based on the other mail that I deleted too eagerly, I guess
> |> we should change DEFVAR_INT to take an EMACS_INT*.
> 
> IMHO no, since that would require changing the type of all other variables
> refered to by DEFVAR_INT.  I'd rather define a new macro DEFVAR_EMACS_INT.

But that requires adding a new tag for Lisp_EmacsIntFwd and handling
it at all the various places.  That would be silly since all the
defvar_int variables could just as well be of type EMACS_INT.

As a matter of fact, I think we should just go ahead and turn all those
vars to EMACS_INT.  Here is a patch that does just that
(untested since I only have access to systems where EMACS_INT = int).

Any objection ?


	Stefan


cvs server: Diffing src
Index: src/abbrev.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/abbrev.c,v
retrieving revision 1.49
diff -u -r1.49 abbrev.c
--- src/abbrev.c	29 Dec 2001 21:42:22 -0000	1.49
+++ src/abbrev.c	12 Feb 2002 19:34:03 -0000
@@ -77,7 +77,7 @@
 
 /* Character address of start of last abbrev expanded */
 
-int last_abbrev_point;
+EMACS_INT last_abbrev_point;
 
 /* Hook to run before expanding any abbrev.  */
 
Index: src/alloc.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/alloc.c,v
retrieving revision 1.262
diff -u -r1.262 alloc.c
--- src/alloc.c	7 Feb 2002 11:10:47 -0000	1.262
+++ src/alloc.c	12 Feb 2002 19:34:03 -0000
@@ -122,18 +122,18 @@
 
 /* Count the amount of consing of various sorts of space.  */
 
-int cons_cells_consed;
-int floats_consed;
-int vector_cells_consed;
-int symbols_consed;
-int string_chars_consed;
-int misc_objects_consed;
-int intervals_consed;
-int strings_consed;
+EMACS_INT cons_cells_consed;
+EMACS_INT floats_consed;
+EMACS_INT vector_cells_consed;
+EMACS_INT symbols_consed;
+EMACS_INT string_chars_consed;
+EMACS_INT misc_objects_consed;
+EMACS_INT intervals_consed;
+EMACS_INT strings_consed;
 
 /* Number of bytes of consing since GC before another GC should be done. */
 
-int gc_cons_threshold;
+EMACS_INT gc_cons_threshold;
 
 /* Nonzero during GC.  */
 
@@ -155,8 +155,8 @@
 
 /* Two limits controlling how much undo information to keep.  */
 
-int undo_limit;
-int undo_strong_limit;
+EMACS_INT undo_limit;
+EMACS_INT undo_strong_limit;
 
 /* Number of live and free conses etc.  */
 
@@ -215,7 +215,7 @@
 
 /* Index in pure at which next pure object will be allocated.. */
 
-int pure_bytes_used;
+EMACS_INT pure_bytes_used;
 
 /* If nonzero, this is a warning delivered by malloc and not yet
    displayed.  */
Index: src/callproc.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/callproc.c,v
retrieving revision 1.181
diff -u -r1.181 callproc.c
--- src/callproc.c	7 Dec 2001 06:45:39 -0000	1.181
+++ src/callproc.c	12 Feb 2002 19:34:03 -0000
@@ -1151,7 +1151,7 @@
 
 #ifdef SET_EMACS_PRIORITY
   {
-    extern int emacs_priority;
+    extern EMACS_INT emacs_priority;
 
     if (emacs_priority < 0)
       nice (- emacs_priority);
Index: src/charset.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/charset.c,v
retrieving revision 1.125
diff -u -r1.125 charset.c
--- src/charset.c	6 Feb 2002 19:12:14 -0000	1.125
+++ src/charset.c	12 Feb 2002 19:34:03 -0000
@@ -49,10 +49,10 @@
 Lisp_Object Qunknown;
 
 /* Declaration of special leading-codes.  */
-int leading_code_private_11;	/* for private DIMENSION1 of 1-column */
-int leading_code_private_12;	/* for private DIMENSION1 of 2-column */
-int leading_code_private_21;	/* for private DIMENSION2 of 1-column */
-int leading_code_private_22;	/* for private DIMENSION2 of 2-column */
+EMACS_INT leading_code_private_11;	/* for private DIMENSION1 of 1-column */
+EMACS_INT leading_code_private_12;	/* for private DIMENSION1 of 2-column */
+EMACS_INT leading_code_private_21;	/* for private DIMENSION2 of 1-column */
+EMACS_INT leading_code_private_22;	/* for private DIMENSION2 of 2-column */
 
 /* Declaration of special charsets.  The values are set by
    Fsetup_special_charsets.  */
@@ -98,7 +98,7 @@
 int _fetch_multibyte_char_len;
 
 /* Offset to add to a non-ASCII value when inserting it.  */
-int nonascii_insert_offset;
+EMACS_INT nonascii_insert_offset;
 
 /* Translation table for converting non-ASCII unibyte characters
    to multibyte codes, or nil.  */
Index: src/commands.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/commands.h,v
retrieving revision 1.17
diff -u -r1.17 commands.h
--- src/commands.h	9 Aug 1998 21:55:27 -0000	1.17
+++ src/commands.h	12 Feb 2002 19:34:03 -0000
@@ -51,7 +51,7 @@
 
 /* Command char event to be re-read, or -1 if none.
    Setting this is obsolete, but some things should still check it.  */
-extern int unread_command_char;
+extern EMACS_INT unread_command_char;
 
 /* The command being executed by the command loop.
    Commands may set this, and the value set will be copied into
Index: src/dispextern.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/dispextern.h,v
retrieving revision 1.123
diff -u -r1.123 dispextern.h
--- src/dispextern.h	25 Jan 2002 13:22:37 -0000	1.123
+++ src/dispextern.h	12 Feb 2002 19:34:04 -0000
@@ -2161,7 +2161,7 @@
 
 /* Thickness of relief to draw around tool-bar buttons.  */
 
-extern int tool_bar_button_relief;
+extern EMACS_INT tool_bar_button_relief;
 
 /* Default values of the above variables.  */
 
Index: src/dispnew.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/dispnew.c,v
retrieving revision 1.300
diff -u -r1.300 dispnew.c
--- src/dispnew.c	19 Jan 2002 13:54:57 -0000	1.300
+++ src/dispnew.c	12 Feb 2002 19:34:04 -0000
@@ -211,7 +211,7 @@
 
 /* Line speed of the terminal.  */
 
-int baud_rate;
+EMACS_INT baud_rate;
 
 /* Either nil or a symbol naming the window system under which Emacs
    is running.  */
Index: src/dosfns.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/dosfns.c,v
retrieving revision 1.34
diff -u -r1.34 dosfns.c
--- src/dosfns.c	9 Dec 2001 20:10:02 -0000	1.34
+++ src/dosfns.c	12 Feb 2002 19:34:04 -0000
@@ -240,11 +240,11 @@
 }
 \f
 /* country info */
-int dos_country_code;
-int dos_codepage;
-int dos_timezone_offset;
-int dos_decimal_point;
-int dos_keyboard_layout;
+EMACS_INT dos_country_code;
+EMACS_INT dos_codepage;
+EMACS_INT dos_timezone_offset;
+EMACS_INT dos_decimal_point;
+EMACS_INT dos_keyboard_layout;
 unsigned char dos_country_info[DOS_COUNTRY_INFO];
 static unsigned char usa_country_info[DOS_COUNTRY_INFO] = {
   0, 0,				/* date format */
@@ -261,9 +261,9 @@
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0	/* reserved */
 };
 
-int dos_hyper_key;
-int dos_super_key;
-int dos_keypad_mode;
+EMACS_INT dos_hyper_key;
+EMACS_INT dos_super_key;
+EMACS_INT dos_keypad_mode;
 
 Lisp_Object Vdos_version;
 Lisp_Object Vdos_display_scancodes;
Index: src/dosfns.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/dosfns.h,v
retrieving revision 1.11
diff -u -r1.11 dosfns.h
--- src/dosfns.h	4 Mar 2001 07:10:39 -0000	1.11
+++ src/dosfns.h	12 Feb 2002 19:34:04 -0000
@@ -22,15 +22,15 @@
 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
-extern int dos_hyper_key;
-extern int dos_super_key;
-extern int dos_decimal_point;
-extern int dos_keypad_mode;
+extern EMACS_INT dos_hyper_key;
+extern EMACS_INT dos_super_key;
+extern EMACS_INT dos_decimal_point;
+extern EMACS_INT dos_keypad_mode;
 
-extern int dos_keyboard_layout;
-extern int dos_country_code;
-extern int dos_codepage;
-extern int dos_timezone_offset;
+extern EMACS_INT dos_keyboard_layout;
+extern EMACS_INT dos_country_code;
+extern EMACS_INT dos_codepage;
+extern EMACS_INT dos_timezone_offset;
 
 #define DOS_COUNTRY_INFO 34	/* no of bytes returned by dos int 38h */
 extern unsigned char dos_country_info[DOS_COUNTRY_INFO];
Index: src/emacs.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/emacs.c,v
retrieving revision 1.299
diff -u -r1.299 emacs.c
--- src/emacs.c	14 Jan 2002 13:47:56 -0000	1.299
+++ src/emacs.c	12 Feb 2002 19:34:04 -0000
@@ -165,7 +165,7 @@
 /* If nonzero, set Emacs to run at this priority.  This is also used
    in child_setup and sys_suspend to make sure subshells run at normal
    priority; those functions have their own extern declaration.  */
-int emacs_priority;
+EMACS_INT emacs_priority;
 
 /* If non-zero, a filter or a sentinel is running.  Tested to save the match
    data on the first attempt to change it inside asynchronous code.  */
Index: src/eval.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/eval.c,v
retrieving revision 1.181
diff -u -r1.181 eval.c
--- src/eval.c	2 Feb 2002 10:08:08 -0000	1.181
+++ src/eval.c	12 Feb 2002 19:34:04 -0000
@@ -119,7 +119,7 @@
 
 /* Maximum size allowed for specpdl allocation */
 
-int max_specpdl_size;
+EMACS_INT max_specpdl_size;
 
 /* Depth in Lisp evaluations and function calls.  */
 
@@ -127,7 +127,7 @@
 
 /* Maximum allowed depth in Lisp evaluations and function calls.  */
 
-int max_lisp_eval_depth;
+EMACS_INT max_lisp_eval_depth;
 
 /* Nonzero means enter debugger before next function call */
 
Index: src/indent.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/indent.c,v
retrieving revision 1.146
diff -u -r1.146 indent.c
--- src/indent.c	9 Dec 2001 00:57:28 -0000	1.146
+++ src/indent.c	12 Feb 2002 19:34:04 -0000
@@ -37,7 +37,7 @@
 /* Indentation can insert tabs if this is non-zero;
    otherwise always uses spaces.  */
 
-int indent_tabs_mode;
+EMACS_INT indent_tabs_mode;
 
 #define CR 015
 
Index: src/keyboard.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/keyboard.c,v
retrieving revision 1.654
diff -u -r1.654 keyboard.c
--- src/keyboard.c	6 Feb 2002 22:59:56 -0000	1.654
+++ src/keyboard.c	12 Feb 2002 19:34:05 -0000
@@ -301,7 +301,7 @@
 int command_loop_level;
 
 /* Total number of times command_loop has read a key sequence.  */
-int num_input_keys;
+EMACS_INT num_input_keys;
 
 /* Last input character read as a command.  */
 Lisp_Object last_command_char;
@@ -325,7 +325,7 @@
 Lisp_Object Vunread_post_input_method_events;
 
 /* If not -1, an event to be read as subsequent command input.  */
-int unread_command_char;
+EMACS_INT unread_command_char;
 
 /* If not Qnil, this is a switch-frame event which we decided to put
    off until the end of a key sequence.  This should be read as the
@@ -337,7 +337,7 @@
 Lisp_Object unread_switch_frame;
 
 /* A mask of extra modifier bits to put into every keyboard char.  */
-int extra_keyboard_modifiers;
+EMACS_INT extra_keyboard_modifiers;
 
 /* Char to use as prefix when a meta character is typed in.
    This is bound on entry to minibuffer in case ESC is changed there.  */
@@ -354,12 +354,12 @@
 int num_input_events;
 
 /* Total number of times read_char has returned, outside of macros.  */
-int num_nonmacro_input_events;
+EMACS_INT num_nonmacro_input_events;
 
 /* Auto-save automatically when this many characters have been typed
    since the last time.  */
 
-static int auto_save_interval;
+static EMACS_INT auto_save_interval;
 
 /* Value of num_nonmacro_input_events as of last auto save.  */
 
@@ -451,7 +451,7 @@
 Lisp_Object Qpost_command_idle_hook, Vpost_command_idle_hook;
 
 /* Delay time in microseconds before running post-command-idle-hook.  */
-int post_command_idle_delay;
+EMACS_INT post_command_idle_delay;
 
 /* List of deferred actions to be performed at a later time.
    The precise format isn't relevant here; we just check whether it is nil.  */
@@ -1828,7 +1828,7 @@
 /* Number of seconds between polling for input.  This is a Lisp
    variable that can be bound.  */
 
-int polling_period;
+EMACS_INT polling_period;
 
 /* Nonzero means polling for input is temporarily suppressed.  */
 
@@ -4669,7 +4669,7 @@
 /* Maximum number of pixels the mouse may be moved between clicks
    to make a double-click.  */
 
-int double_click_fuzz;
+EMACS_INT double_click_fuzz;
 
 /* The number of clicks in this multiple-click. */
 
Index: src/keyboard.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/keyboard.h,v
retrieving revision 1.54
diff -u -r1.54 keyboard.h
--- src/keyboard.h	16 Nov 2001 22:50:09 -0000	1.54
+++ src/keyboard.h	12 Feb 2002 19:34:05 -0000
@@ -187,7 +187,7 @@
 extern int num_input_events;
 
 /* Total number of times read_char has returned, outside of macros.  */
-extern int num_nonmacro_input_events;
+extern EMACS_INT num_nonmacro_input_events;
 
 /* Nonzero means polling for input is temporarily suppressed.  */
 extern int poll_suppress_count;
Index: src/lisp.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/lisp.h,v
retrieving revision 1.407
diff -u -r1.407 lisp.h
--- src/lisp.h	7 Feb 2002 20:22:19 -0000	1.407
+++ src/lisp.h	12 Feb 2002 19:34:05 -0000
@@ -1068,7 +1068,7 @@
   {
     int type : 16;	/* = Lisp_Misc_Intfwd */
     int spacer : 16;
-    int *intvar;
+    EMACS_INT *intvar;
   };
 
 /* Boolean forwarding pointer to an int variable.
@@ -1598,7 +1598,7 @@
 extern void defvar_lisp P_ ((char *, Lisp_Object *));
 extern void defvar_lisp_nopro P_ ((char *, Lisp_Object *));
 extern void defvar_bool P_ ((char *, int *));
-extern void defvar_int P_ ((char *, int *));
+extern void defvar_int P_ ((char *, EMACS_INT *));
 extern void defvar_per_buffer P_ ((char *, Lisp_Object *, Lisp_Object, char *));
 extern void defvar_kboard P_ ((char *, int));
 
@@ -1653,7 +1653,7 @@
 extern struct specbinding *specpdl_ptr;
 extern int specpdl_size;
 
-extern int max_specpdl_size;
+extern EMACS_INT max_specpdl_size;
 
 #define BINDING_STACK_SIZE()	(specpdl_ptr - specpdl)
 
@@ -1763,7 +1763,7 @@
 
 /* Threshold for doing another gc.  */
 
-extern int gc_cons_threshold;
+extern EMACS_INT gc_cons_threshold;
 
 /* Structure for recording stack slots that need marking.  */
 
@@ -2099,7 +2099,7 @@
 						     int));
 
 /* Defined in charset.c */
-extern int nonascii_insert_offset;
+extern EMACS_INT nonascii_insert_offset;
 extern Lisp_Object Vnonascii_translation_table;
 EXFUN (Fchar_bytes, 1);
 EXFUN (Fchar_width, 1);
@@ -2267,6 +2267,7 @@
 
 /* Defined in dispnew.c */
 extern Lisp_Object selected_frame;
+extern EMACS_INT baud_rate;
 EXFUN (Fding, 1);
 EXFUN (Fredraw_frame, 1);
 EXFUN (Fredraw_display, 0);
Index: src/lread.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/lread.c,v
retrieving revision 1.277
diff -u -r1.277 lread.c
--- src/lread.c	3 Feb 2002 10:35:20 -0000	1.277
+++ src/lread.c	12 Feb 2002 19:34:05 -0000
@@ -3242,7 +3242,7 @@
 void
 defvar_int (namestring, address)
      char *namestring;
-     int *address;
+     EMACS_INT *address;
 {
   Lisp_Object sym, val;
   sym = intern (namestring);
Index: src/sysdep.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/sysdep.c,v
retrieving revision 1.230
diff -u -r1.230 sysdep.c
--- src/sysdep.c	8 Feb 2002 09:44:05 -0000	1.230
+++ src/sysdep.c	12 Feb 2002 19:34:05 -0000
@@ -842,7 +842,7 @@
 
 #ifdef SET_EMACS_PRIORITY
       {
-	extern int emacs_priority;
+	extern EMACS_INT emacs_priority;
 
 	if (emacs_priority < 0)
 	  nice (-emacs_priority);
Index: src/termcap.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/termcap.c,v
retrieving revision 1.20
diff -u -r1.20 termcap.c
--- src/termcap.c	28 May 2001 11:58:27 -0000	1.20
+++ src/termcap.c	12 Feb 2002 19:34:05 -0000
@@ -320,7 +320,7 @@
   register int padcount = 0;
   register int speed;
 
-  extern int baud_rate;
+  extern EMACS_INT baud_rate;
   speed = baud_rate;
   /* For quite high speeds, convert to the smaller
      units to avoid overflow.  */
Index: src/termchar.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/termchar.h,v
retrieving revision 1.6
diff -u -r1.6 termchar.h
--- src/termchar.h	15 Jan 1996 09:06:29 -0000	1.6
+++ src/termchar.h	12 Feb 2002 19:34:05 -0000
@@ -19,7 +19,7 @@
 Boston, MA 02111-1307, USA.  */
 
 
-extern int baud_rate;		/* Output speed in baud */
+/* extern EMACS_INT baud_rate; */		/* Output speed in baud */
 extern int must_write_spaces;	/* Nonzero means spaces in the text
 				   must actually be output; can't just skip
 				   over some columns to leave them blank.  */
Index: src/w32term.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/w32term.c,v
retrieving revision 1.141
diff -u -r1.141 w32term.c
--- src/w32term.c	6 Feb 2002 20:57:44 -0000	1.141
+++ src/w32term.c	12 Feb 2002 19:34:06 -0000
@@ -329,7 +329,7 @@
 
 /* A mask of extra modifier bits to put into every keyboard char.  */
 
-extern int extra_keyboard_modifiers;
+extern EMACS_INT extra_keyboard_modifiers;
 
 /* Enumeration for overriding/changing the face to use for drawing
    glyphs in x_draw_glyphs.  */
Index: src/window.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/window.c,v
retrieving revision 1.400
diff -u -r1.400 window.c
--- src/window.c	21 Jan 2002 08:53:42 -0000	1.400
+++ src/window.c	12 Feb 2002 19:34:06 -0000
@@ -135,8 +135,8 @@
 
 /* If a window gets smaller than either of these, it is removed. */
 
-int window_min_height;
-int window_min_width;
+EMACS_INT window_min_height;
+EMACS_INT window_min_width;
 
 /* Nonzero implies Fdisplay_buffer should create windows. */
 
@@ -189,11 +189,11 @@
 /* Fdisplay_buffer always splits the largest window
    if that window is more than this high.  */
 
-int split_height_threshold;
+EMACS_INT split_height_threshold;
 
 /* Number of lines of continuity in scrolling by screenfuls.  */
 
-int next_screen_context_lines;
+EMACS_INT next_screen_context_lines;
 
 /* Incremented for each window created.  */
 
@@ -218,7 +218,7 @@
 static int inhibit_frame_unsplittable;
 #endif /* 0 */
 
-extern int scroll_margin;
+extern EMACS_INT scroll_margin;
 
 extern Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions;
 \f
Index: src/xdisp.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/xdisp.c,v
retrieving revision 1.723
diff -u -r1.723 xdisp.c
--- src/xdisp.c	26 Jan 2002 23:02:00 -0000	1.723
+++ src/xdisp.c	12 Feb 2002 19:34:07 -0000
@@ -242,7 +242,7 @@
 
 /* Thickness of shadow to draw around tool bar buttons.  */
 
-int tool_bar_button_relief;
+EMACS_INT tool_bar_button_relief;
 
 /* Non-zero means automatically resize tool-bars so that all tool-bar
    items are visible, and no blank lines remain.  */
@@ -383,19 +383,19 @@
 /* If cursor motion alone moves point off frame, try scrolling this
    many lines up or down if that will bring it back.  */
 
-static int scroll_step;
+static EMACS_INT scroll_step;
 
 /* Nonzero means scroll just far enough to bring point back on the
    screen, when appropriate.  */
 
-static int scroll_conservatively;
+static EMACS_INT scroll_conservatively;
 
 /* Recenter the window whenever point gets within this many lines of
    the top or bottom of the window.  This value is translated into a
    pixel value by multiplying it with CANON_Y_UNIT, which means that
    there is really a fixed pixel height scroll margin.  */
 
-int scroll_margin;
+EMACS_INT scroll_margin;
 
 /* Number of windows showing the buffer of the selected window (or
    another buffer with the same base buffer).  keyboard.c refers to
@@ -463,7 +463,7 @@
 
 /* Line width to consider when repositioning for line number display.  */
 
-static int line_number_display_limit_width;
+static EMACS_INT line_number_display_limit_width;
 
 /* Number of lines to keep in the message log buffer.  t means
    infinite.  nil means don't log at all.  */
@@ -8151,7 +8151,7 @@
 /* Values of window_end_pos and window_end_vpos at the end of
    try_window_id.  */
 
-int debug_end_pos, debug_end_vpos;
+EMACS_INT debug_end_pos, debug_end_vpos;
 
 /* Append a string to W->desired_matrix->method.  FMT is a printf
    format string.  A1...A9 are a supplement for a variable-length
@@ -9461,7 +9461,7 @@
 	       scroll_step, temp_scroll_step)
      Lisp_Object window;
      int just_this_one_p;
-     int scroll_conservatively, scroll_step;
+     EMACS_INT scroll_conservatively, scroll_step;
      int temp_scroll_step;
 {
   struct window *w = XWINDOW (window);
Index: src/xselect.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/xselect.c,v
retrieving revision 1.108
diff -u -r1.108 xselect.c
--- src/xselect.c	2 Nov 2001 20:39:03 -0000	1.108
+++ src/xselect.c	12 Feb 2002 19:34:07 -0000
@@ -152,7 +152,7 @@
 
 /* If the selection owner takes too long to reply to a selection request,
    we give up on it.  This is in milliseconds (0 = no timeout.)  */
-static int x_selection_timeout;
+static EMACS_INT x_selection_timeout;
 \f
 /* Utility functions */
 
Index: src/xterm.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/xterm.c,v
retrieving revision 1.703
diff -u -r1.703 xterm.c
--- src/xterm.c	27 Jan 2002 16:43:36 -0000	1.703
+++ src/xterm.c	12 Feb 2002 19:34:08 -0000
@@ -379,7 +379,7 @@
 
 /* A mask of extra modifier bits to put into every keyboard char.  */
 
-extern int extra_keyboard_modifiers;
+extern EMACS_INT extra_keyboard_modifiers;
 
 static Lisp_Object Qvendor_specific_keysyms;
 
cvs server: Diffing src/bitmaps
cvs server: Diffing src/m
cvs server: Diffing src/s


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Type of max_specpdl_size and max_lisp_eval_depth
  2002-02-12 19:40     ` Type of max_specpdl_size and max_lisp_eval_depth Stefan Monnier
@ 2002-02-14  3:12       ` Richard Stallman
  2002-02-14 10:27         ` Eli Zaretskii
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Stallman @ 2002-02-14  3:12 UTC (permalink / raw
  Cc: emacs-devel

    As a matter of fact, I think we should just go ahead and turn all those
    vars to EMACS_INT.  Here is a patch that does just that
    (untested since I only have access to systems where EMACS_INT = int).

    Any objection ?

On principle, I have no objection.  I don't know if there is some
technical problem hiding in the change.

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Type of max_specpdl_size and max_lisp_eval_depth
  2002-02-14  3:12       ` Richard Stallman
@ 2002-02-14 10:27         ` Eli Zaretskii
  2002-02-14 22:40           ` Stefan Monnier
  0 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2002-02-14 10:27 UTC (permalink / raw
  Cc: monnier+gnu/emacs, emacs-devel


On Wed, 13 Feb 2002, Richard Stallman wrote:

> On principle, I have no objection.  I don't know if there is some
> technical problem hiding in the change.

It's a long-standing issue, which causes subtle bugs on 64-bit
machines and when values become large.

I'd say let's install this and see how bad can that be.  (I'm guessing
Stefan is already running the patched version for at least a day.)

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Type of max_specpdl_size and max_lisp_eval_depth
  2002-02-14 10:27         ` Eli Zaretskii
@ 2002-02-14 22:40           ` Stefan Monnier
  2002-02-15 21:56             ` Andreas Schwab
  0 siblings, 1 reply; 7+ messages in thread
From: Stefan Monnier @ 2002-02-14 22:40 UTC (permalink / raw
  Cc: Richard Stallman, monnier+gnu/emacs, emacs-devel

> > On principle, I have no objection.  I don't know if there is some
> > technical problem hiding in the change.
> 
> It's a long-standing issue, which causes subtle bugs on 64-bit
> machines and when values become large.

Right, my patch is meant to fix some of those problems.

> I'd say let's install this and see how bad can that be.  (I'm guessing
> Stefan is already running the patched version for at least a day.)

Problem is: on 32bit systems (like the ones I'm using), my patch is really
a noop since it just changes some `int's to `EMACS_INT' but EMACS_INT is
#defined to `int' anyway on those systems.
So if someone could try it out on a 64bit system... (a comparison of
`gcc -Wall' output before and after the patch might be helpful,
although I doubt it).


	Stefan


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Type of max_specpdl_size and max_lisp_eval_depth
  2002-02-14 22:40           ` Stefan Monnier
@ 2002-02-15 21:56             ` Andreas Schwab
  2002-02-15 22:42               ` Stefan Monnier
  0 siblings, 1 reply; 7+ messages in thread
From: Andreas Schwab @ 2002-02-15 21:56 UTC (permalink / raw
  Cc: Eli Zaretskii, Richard Stallman, emacs-devel

"Stefan Monnier" <monnier+gnu/emacs@RUM.cs.yale.edu> writes:

|> So if someone could try it out on a 64bit system... (a comparison of
|> `gcc -Wall' output before and after the patch might be helpful,
|> although I doubt it).

Here is what I have found by compiling on ia64-suse-linux:

diff -u src/indent.c src/indent.c
--- src/indent.c
+++ src/indent.c
@@ -37,7 +37,7 @@
 /* Indentation can insert tabs if this is non-zero;
    otherwise always uses spaces.  */
 
-EMACS_INT indent_tabs_mode;
+int indent_tabs_mode;
 
 #define CR 015
 
diff -u src/xdisp.c src/xdisp.c
--- src/xdisp.c
+++ src/xdisp.c
@@ -726,7 +726,7 @@
 static void extend_face_to_end_of_line P_ ((struct it *));
 static int append_space P_ ((struct it *, int));
 static int make_cursor_line_fully_visible P_ ((struct window *));
-static int try_scrolling P_ ((Lisp_Object, int, int, int, int));
+static int try_scrolling P_ ((Lisp_Object, int, EMACS_INT, EMACS_INT, int));
 static int try_cursor_movement P_ ((Lisp_Object, struct text_pos, int *));
 static int trailing_whitespace_p P_ ((int));
 static int message_log_check_duplicate P_ ((int, int, int, int));

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE GmbH, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Type of max_specpdl_size and max_lisp_eval_depth
  2002-02-15 21:56             ` Andreas Schwab
@ 2002-02-15 22:42               ` Stefan Monnier
  2002-02-15 23:08                 ` Andreas Schwab
  0 siblings, 1 reply; 7+ messages in thread
From: Stefan Monnier @ 2002-02-15 22:42 UTC (permalink / raw
  Cc: Stefan Monnier, Eli Zaretskii, Richard Stallman, emacs-devel

> "Stefan Monnier" <monnier+gnu/emacs@RUM.cs.yale.edu> writes:
> 
> |> So if someone could try it out on a 64bit system... (a comparison of
> |> `gcc -Wall' output before and after the patch might be helpful,
> |> although I doubt it).
> 
> Here is what I have found by compiling on ia64-suse-linux:

Does that mean that compilation fails with my patch unless you
additionally apply the patch you attached ?


	Stefan


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Type of max_specpdl_size and max_lisp_eval_depth
  2002-02-15 22:42               ` Stefan Monnier
@ 2002-02-15 23:08                 ` Andreas Schwab
  0 siblings, 0 replies; 7+ messages in thread
From: Andreas Schwab @ 2002-02-15 23:08 UTC (permalink / raw
  Cc: Eli Zaretskii, Richard Stallman, emacs-devel

"Stefan Monnier" <monnier+gnu/emacs@RUM.cs.yale.edu> writes:

|> > "Stefan Monnier" <monnier+gnu/emacs@RUM.cs.yale.edu> writes:
|> > 
|> > |> So if someone could try it out on a 64bit system... (a comparison of
|> > |> `gcc -Wall' output before and after the patch might be helpful,
|> > |> although I doubt it).
|> > 
|> > Here is what I have found by compiling on ia64-suse-linux:
|> 
|> Does that mean that compilation fails with my patch unless you
|> additionally apply the patch you attached ?

Yes.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE GmbH, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2002-02-15 23:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <9003-Wed02Jan2002183452+0200-eliz@is.elta.co.il>
     [not found] ` <200201091815.g09IFpL08127@rum.cs.yale.edu>
     [not found]   ` <jebsg3idtl.fsf@sykes.suse.de>
2002-02-12 19:40     ` Type of max_specpdl_size and max_lisp_eval_depth Stefan Monnier
2002-02-14  3:12       ` Richard Stallman
2002-02-14 10:27         ` Eli Zaretskii
2002-02-14 22:40           ` Stefan Monnier
2002-02-15 21:56             ` Andreas Schwab
2002-02-15 22:42               ` Stefan Monnier
2002-02-15 23:08                 ` Andreas Schwab

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).