]> git.eshelyaron.com Git - emacs.git/commitdiff
* intervals.h (SET_INTERVAL_PARENT): Use INT_LISPLIKE to test for a pointer
authorKen Raeburn <raeburn@raeburn.org>
Wed, 5 Apr 2000 18:53:39 +0000 (18:53 +0000)
committerKen Raeburn <raeburn@raeburn.org>
Wed, 5 Apr 2000 18:53:39 +0000 (18:53 +0000)
that looks like a lisp object.
(SET_INTERVAL_OBJECT): Don't explicitly compare the object with zero, instead
see whether it's an integer object, since they can't have intervals.
(GET_INTERVAL_OBJECT): Simply assign to the destination.

src/ChangeLog
src/intervals.h

index b42ccbb177ad6968a97e8c7e2166d8aecd3f232c..b957c146a8350eea6b1b096df3d99b7ab3844e31 100644 (file)
@@ -1,5 +1,12 @@
 2000-04-05  Ken Raeburn  <raeburn@gnu.org>
 
+       * intervals.h (SET_INTERVAL_PARENT): Use INT_LISPLIKE to test for
+       a pointer that looks like a lisp object.
+       (SET_INTERVAL_OBJECT): Don't explicitly compare the object with
+       zero, instead see whether it's an integer object, since they can't
+       have intervals.
+       (GET_INTERVAL_OBJECT): Simply assign to the destination.
+
        * dispnew.c (allocate_matrices_for_frame_redisplay,
        direct_output_forward_char): Use X(U)INT and make_number as needed
        to convert between (unsigned) int values and lisp integers.
index 5db02e78629406c19e733a35665ed8e0978f2a43..1a6bb341d0c4d2ce3a463a5bd44b29c9379fe58c 100644 (file)
@@ -113,12 +113,10 @@ Boston, MA 02111-1307, USA.  */
    The choice of macros is dependent on the type needed.  Don't add
    casts to get around this, it will break some development work in
    progress.  */
-#define SET_INTERVAL_PARENT(i,p) (eassert (!BUFFERP ((Lisp_Object)(p)) && !STRINGP ((Lisp_Object)(p))),(i)->up_obj = 0, (i)->up.interval = (p))
-#define SET_INTERVAL_OBJECT(i,o) (eassert ((o) != 0), eassert (BUFFERP (o) || STRINGP (o)),(i)->up_obj = 1, (i)->up.obj = (o))
+#define SET_INTERVAL_PARENT(i,p) (eassert (!INT_LISPLIKE (p)),(i)->up_obj = 0, (i)->up.interval = (p))
+#define SET_INTERVAL_OBJECT(i,o) (eassert (!INTEGERP (o)), eassert (BUFFERP (o) || STRINGP (o)),(i)->up_obj = 1, (i)->up.obj = (o))
 #define INTERVAL_PARENT(i) (eassert((i) != 0 && (i)->up_obj == 0),(i)->up.interval)
-/* Because XSETFASTINT has to be used, this can't simply be
-   value-returning.  */
-#define GET_INTERVAL_OBJECT(d,s) (eassert((s)->up_obj == 1),XSETFASTINT ((d), (s)->up.obj))
+#define GET_INTERVAL_OBJECT(d,s) (eassert((s)->up_obj == 1), (d) = (s)->up.obj)
 
 /* Make the parent of D be whatever the parent of S is, regardless of
    type.  This is used when balancing an interval tree.  */