Port to Sun C.
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 21 Jun 2011 16:47:56 +0000 (09:47 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 21 Jun 2011 16:47:56 +0000 (09:47 -0700)
* composite.c (find_automatic_composition): Omit needless 'return 0;'
that Sun C diagnosed.
* fns.c (secure_hash): Fix pointer signedness issue.
* intervals.c (static_offset_intervals): New function.
(offset_intervals): Use it.

src/ChangeLog
src/composite.c
src/fns.c
src/intervals.c

index 279bd1b..48625bb 100644 (file)
@@ -1,3 +1,12 @@
+2011-06-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Port to Sun C.
+       * composite.c (find_automatic_composition): Omit needless 'return 0;'
+       that Sun C diagnosed.
+       * fns.c (secure_hash): Fix pointer signedness issue.
+       * intervals.c (static_offset_intervals): New function.
+       (offset_intervals): Use it.
+
 2011-06-21  Leo Liu  <sdl.web@gmail.com>
 
        * deps.mk (fns.o):
index 51b7669..6a4fe80 100644 (file)
@@ -1676,7 +1676,6 @@ find_automatic_composition (EMACS_INT pos, EMACS_INT limit,
        }
       BACKWARD_CHAR (cur, stop);
     }
-  return 0;
 }
 
 /* Return the adjusted point provided that point is moved from LAST_PT
index 96b8a4e..cd7e673 100644 (file)
--- a/src/fns.c
+++ b/src/fns.c
@@ -4802,7 +4802,7 @@ secure_hash (Lisp_Object algorithm, Lisp_Object object, Lisp_Object start, Lisp_
       return digest;
     }
   else
-    return make_unibyte_string (SDATA (digest), digest_size);
+    return make_unibyte_string (SSDATA (digest), digest_size);
 }
 
 DEFUN ("md5", Fmd5, Smd5, 1, 5, 0,
index f9e9c86..4de001f 100644 (file)
@@ -1425,10 +1425,15 @@ adjust_intervals_for_deletion (struct buffer *buffer,
 /* Make the adjustments necessary to the interval tree of BUFFER to
    represent an addition or deletion of LENGTH characters starting
    at position START.  Addition or deletion is indicated by the sign
-   of LENGTH.  */
+   of LENGTH.
 
-inline void
-offset_intervals (struct buffer *buffer, EMACS_INT start, EMACS_INT length)
+   The two inline functions (one static) pacify Sun C 5.8, a pre-C99
+   compiler that does not allow calling a static function (here,
+   adjust_intervals_for_deletion) from a non-static inline function.  */
+
+static inline void
+static_offset_intervals (struct buffer *buffer, EMACS_INT start,
+                        EMACS_INT length)
 {
   if (NULL_INTERVAL_P (BUF_INTERVALS (buffer)) || length == 0)
     return;
@@ -1441,6 +1446,12 @@ offset_intervals (struct buffer *buffer, EMACS_INT start, EMACS_INT length)
       adjust_intervals_for_deletion (buffer, start, -length);
     }
 }
+
+inline void
+offset_intervals (struct buffer *buffer, EMACS_INT start, EMACS_INT length)
+{
+  static_offset_intervals (buffer, start, length);
+}
 \f
 /* Merge interval I with its lexicographic successor. The resulting
    interval is returned, and has the properties of the original