[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
EMACS_INT cleanup
From: |
Lars Magne Ingebrigtsen |
Subject: |
EMACS_INT cleanup |
Date: |
Thu, 23 Sep 2010 20:37:45 +0200 |
User-agent: |
Gnus/5.110011 (No Gnus v0.11) Emacs/24.0.50 (gnu/linux) |
I went through marker.c and fixed all the EMACS_INT/int problems there.
Before committing, could somebody take a peek and see whether it looks
saneish?
I can't actually test, since the interval cleanup makes Emacs
segfault...
=== modified file 'src/ChangeLog'
--- src/ChangeLog 2010-09-23 17:10:21 +0000
+++ src/ChangeLog 2010-09-23 18:33:22 +0000
@@ -1,3 +1,14 @@
+2010-09-23 Lars Magne Ingebrigtsen <address@hidden>
+
+ * lisp.h: Change the definition of all marker.c functions that
+ take and return buffer stuff to be EMACS_INT instead of int.
+
+ * marker.c (buf_charpos_to_bytepos, CONSIDER, set_marker_both)
+ (buf_charpos_to_bytepos, bytepos_to_charpos)
+ (buf_bytepos_to_charpos, Fbuffer_has_markers_at)
+ (set_marker_restricted, set_marker_both): Convert int to EMACS_INT
+ for all buffer positions.
+
2010-09-23 Eli Zaretskii <address@hidden>
* editfns.c (transpose_markers, update_buffer_properties)
=== modified file 'src/lisp.h'
--- src/lisp.h 2010-09-23 17:10:21 +0000
+++ src/lisp.h 2010-09-23 18:30:34 +0000
@@ -3054,17 +3054,17 @@
EXFUN (Fmarker_buffer, 1);
EXFUN (Fcopy_marker, 2);
EXFUN (Fset_marker, 3);
-extern int marker_position (Lisp_Object);
-extern int marker_byte_position (Lisp_Object);
+extern EMACS_INT marker_position (Lisp_Object);
+extern EMACS_INT marker_byte_position (Lisp_Object);
extern void clear_charpos_cache (struct buffer *);
-extern int charpos_to_bytepos (int);
-extern int buf_charpos_to_bytepos (struct buffer *, int);
-extern int buf_bytepos_to_charpos (struct buffer *, int);
+extern EMACS_INT charpos_to_bytepos (EMACS_INT);
+extern EMACS_INT buf_charpos_to_bytepos (struct buffer *, EMACS_INT);
+extern EMACS_INT buf_bytepos_to_charpos (struct buffer *, EMACS_INT);
extern void unchain_marker (struct Lisp_Marker *marker);
extern Lisp_Object set_marker_restricted (Lisp_Object, Lisp_Object,
Lisp_Object);
-extern Lisp_Object set_marker_both (Lisp_Object, Lisp_Object, int, int);
+extern Lisp_Object set_marker_both (Lisp_Object, Lisp_Object, EMACS_INT,
EMACS_INT);
extern Lisp_Object set_marker_restricted_both (Lisp_Object, Lisp_Object,
- int, int);
+ EMACS_INT, EMACS_INT);
extern void syms_of_marker (void);
/* Defined in fileio.c */
=== modified file 'src/marker.c'
--- src/marker.c 2010-08-30 12:47:49 +0000
+++ src/marker.c 2010-09-23 18:35:58 +0000
@@ -27,12 +27,12 @@
/* Record one cached position found recently by
buf_charpos_to_bytepos or buf_bytepos_to_charpos. */
-static int cached_charpos;
-static int cached_bytepos;
+static EMACS_INT cached_charpos;
+static EMACS_INT cached_bytepos;
static struct buffer *cached_buffer;
static int cached_modiff;
-static void byte_char_debug_check (struct buffer *, int, int);
+static void byte_char_debug_check (struct buffer *, EMACS_INT, EMACS_INT);
/* Nonzero means enable debugging checks on byte/char correspondences. */
@@ -60,12 +60,12 @@
#define CONSIDER(CHARPOS, BYTEPOS) \
{ \
- int this_charpos = (CHARPOS);
\
+ EMACS_INT this_charpos = (CHARPOS); \
int changed = 0; \
\
if (this_charpos == charpos) \
{ \
- int value = (BYTEPOS); \
+ EMACS_INT value = (BYTEPOS); \
if (byte_debug_flag) \
byte_char_debug_check (b, charpos, value); \
return value; \
@@ -90,7 +90,7 @@
{ \
if (best_above - best_below == best_above_byte - best_below_byte)
\
{ \
- int value = best_below_byte + (charpos - best_below); \
+ EMACS_INT value = best_below_byte + (charpos - best_below); \
if (byte_debug_flag) \
byte_char_debug_check (b, charpos, value); \
return value; \
@@ -99,9 +99,9 @@
}
static void
-byte_char_debug_check (struct buffer *b, int charpos, int bytepos)
+byte_char_debug_check (struct buffer *b, EMACS_INT charpos, EMACS_INT bytepos)
{
- int nchars = 0;
+ EMACS_INT nchars = 0;
if (bytepos > BUF_GPT_BYTE (b))
{
@@ -118,18 +118,18 @@
abort ();
}
-int
-charpos_to_bytepos (int charpos)
+EMACS_INT
+charpos_to_bytepos (EMACS_INT charpos)
{
return buf_charpos_to_bytepos (current_buffer, charpos);
}
-int
-buf_charpos_to_bytepos (struct buffer *b, int charpos)
+EMACS_INT
+buf_charpos_to_bytepos (struct buffer *b, EMACS_INT charpos)
{
struct Lisp_Marker *tail;
- int best_above, best_above_byte;
- int best_below, best_below_byte;
+ EMACS_INT best_above, best_above_byte;
+ EMACS_INT best_below, best_below_byte;
if (charpos < BUF_BEG (b) || charpos > BUF_Z (b))
abort ();
@@ -269,12 +269,12 @@
#define CONSIDER(BYTEPOS, CHARPOS) \
{ \
- int this_bytepos = (BYTEPOS);
\
+ EMACS_INT this_bytepos = (BYTEPOS); \
int changed = 0; \
\
if (this_bytepos == bytepos) \
{ \
- int value = (CHARPOS); \
+ EMACS_INT value = (CHARPOS); \
if (byte_debug_flag) \
byte_char_debug_check (b, value, bytepos); \
return value; \
@@ -299,7 +299,7 @@
{ \
if (best_above - best_below == best_above_byte - best_below_byte)
\
{ \
- int value = best_below + (bytepos - best_below_byte); \
+ EMACS_INT value = best_below + (bytepos - best_below_byte); \
if (byte_debug_flag) \
byte_char_debug_check (b, value, bytepos); \
return value; \
@@ -307,18 +307,18 @@
} \
}
-int
-bytepos_to_charpos (int bytepos)
+EMACS_INT
+bytepos_to_charpos (EMACS_INT bytepos)
{
return buf_bytepos_to_charpos (current_buffer, bytepos);
}
-int
-buf_bytepos_to_charpos (struct buffer *b, int bytepos)
+EMACS_INT
+buf_bytepos_to_charpos (struct buffer *b, EMACS_INT bytepos)
{
struct Lisp_Marker *tail;
- int best_above, best_above_byte;
- int best_below, best_below_byte;
+ EMACS_INT best_above, best_above_byte;
+ EMACS_INT best_below, best_below_byte;
if (bytepos < BUF_BEG_BYTE (b) || bytepos > BUF_Z_BYTE (b))
abort ();
@@ -470,7 +470,7 @@
Returns MARKER. */)
(Lisp_Object marker, Lisp_Object position, Lisp_Object buffer)
{
- register int charno, bytepos;
+ register EMACS_INT charno, bytepos;
register struct buffer *b;
register struct Lisp_Marker *m;
@@ -545,7 +545,7 @@
Lisp_Object
set_marker_restricted (Lisp_Object marker, Lisp_Object pos, Lisp_Object buffer)
{
- register int charno, bytepos;
+ register EMACS_INT charno, bytepos;
register struct buffer *b;
register struct Lisp_Marker *m;
@@ -618,7 +618,7 @@
character position and the corresponding byte position. */
Lisp_Object
-set_marker_both (Lisp_Object marker, Lisp_Object buffer, int charpos, int
bytepos)
+set_marker_both (Lisp_Object marker, Lisp_Object buffer, EMACS_INT charpos,
EMACS_INT bytepos)
{
register struct buffer *b;
register struct Lisp_Marker *m;
@@ -666,7 +666,7 @@
be outside the visible part. */
Lisp_Object
-set_marker_restricted_both (Lisp_Object marker, Lisp_Object buffer, int
charpos, int bytepos)
+set_marker_restricted_both (Lisp_Object marker, Lisp_Object buffer, EMACS_INT
charpos, EMACS_INT bytepos)
{
register struct buffer *b;
register struct Lisp_Marker *m;
@@ -776,7 +776,7 @@
/* Return the char position of marker MARKER, as a C integer. */
-int
+EMACS_INT
marker_position (Lisp_Object marker)
{
register struct Lisp_Marker *m = XMARKER (marker);
@@ -790,12 +790,12 @@
/* Return the byte position of marker MARKER, as a C integer. */
-int
+EMACS_INT
marker_byte_position (Lisp_Object marker)
{
register struct Lisp_Marker *m = XMARKER (marker);
register struct buffer *buf = m->buffer;
- register int i = m->bytepos;
+ register EMACS_INT i = m->bytepos;
if (!buf)
error ("Marker does not point anywhere");
@@ -856,7 +856,7 @@
(Lisp_Object position)
{
register struct Lisp_Marker *tail;
- register int charno;
+ register EMACS_INT charno;
charno = XINT (position);
--
(domestic pets only, the antidote for overdose, milk.)
address@hidden * Lars Magne Ingebrigtsen
- EMACS_INT cleanup,
Lars Magne Ingebrigtsen <=
- Re: EMACS_INT cleanup, Eli Zaretskii, 2010/09/23
- Re: EMACS_INT cleanup, Lars Magne Ingebrigtsen, 2010/09/23
- Re: EMACS_INT cleanup, Lars Magne Ingebrigtsen, 2010/09/23
- Re: EMACS_INT cleanup, Lars Magne Ingebrigtsen, 2010/09/23
- Re: EMACS_INT cleanup, Eli Zaretskii, 2010/09/23
- Re: EMACS_INT cleanup, Lars Magne Ingebrigtsen, 2010/09/23
- Re: EMACS_INT cleanup, Eli Zaretskii, 2010/09/23
- Re: EMACS_INT cleanup, Lars Magne Ingebrigtsen, 2010/09/23
- Re: EMACS_INT cleanup, Eli Zaretskii, 2010/09/23
- Re: EMACS_INT cleanup, Lars Magne Ingebrigtsen, 2010/09/23