emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r114552: emacs_read and emacs_write now use void *,


From: Paul Eggert
Subject: [Emacs-diffs] trunk r114552: emacs_read and emacs_write now use void *, not char *.
Date: Mon, 07 Oct 2013 08:05:32 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 114552
revision-id: address@hidden
parent: address@hidden
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Mon 2013-10-07 01:05:00 -0700
message:
  emacs_read and emacs_write now use void *, not char *.
  
  * alloc.c (valid_pointer_p) [!WINDOWSNT]: Remove now-unnecessary cast.
  * sysdep.c (emacs_read, emacs_write, emacs_write_sig):
  Buffer arg is now void *, not char *.  This matches plain
  'read' and 'write' better, and avoids a constraint violation
  on Solaris 9 with Oracle Studio.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/alloc.c                    alloc.c-20091113204419-o5vbwnq5f7feedwu-252
  src/lisp.h                     lisp.h-20091113204419-o5vbwnq5f7feedwu-253
  src/sysdep.c                   sysdep.c-20091113204419-o5vbwnq5f7feedwu-448
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-10-07 07:15:37 +0000
+++ b/src/ChangeLog     2013-10-07 08:05:00 +0000
@@ -1,3 +1,12 @@
+2013-10-07  Paul Eggert  <address@hidden>
+
+       emacs_read and emacs_write now use void *, not char *.
+       * alloc.c (valid_pointer_p) [!WINDOWSNT]: Remove now-unnecessary cast.
+       * sysdep.c (emacs_read, emacs_write, emacs_write_sig):
+       Buffer arg is now void *, not char *.  This matches plain
+       'read' and 'write' better, and avoids a constraint violation
+       on Solaris 9 with Oracle Studio.
+
 2013-10-07  Dmitry Antipov  <address@hidden>
 
        * alloc.c (Fmake_string): For ASCII char initializer, prefer

=== modified file 'src/alloc.c'
--- a/src/alloc.c       2013-10-07 07:15:37 +0000
+++ b/src/alloc.c       2013-10-07 08:05:00 +0000
@@ -4824,7 +4824,7 @@
 
   if (emacs_pipe (fd) == 0)
     {
-      bool valid = emacs_write (fd[1], (char *) p, 16) == 16;
+      bool valid = emacs_write (fd[1], p, 16) == 16;
       emacs_close (fd[1]);
       emacs_close (fd[0]);
       return valid;

=== modified file 'src/lisp.h'
--- a/src/lisp.h        2013-10-04 07:36:22 +0000
+++ b/src/lisp.h        2013-10-07 08:05:00 +0000
@@ -4085,9 +4085,9 @@
 extern int emacs_open (const char *, int, int);
 extern int emacs_pipe (int[2]);
 extern int emacs_close (int);
-extern ptrdiff_t emacs_read (int, char *, ptrdiff_t);
-extern ptrdiff_t emacs_write (int, const char *, ptrdiff_t);
-extern ptrdiff_t emacs_write_sig (int, char const *, ptrdiff_t);
+extern ptrdiff_t emacs_read (int, void *, ptrdiff_t);
+extern ptrdiff_t emacs_write (int, void const *, ptrdiff_t);
+extern ptrdiff_t emacs_write_sig (int, void const *, ptrdiff_t);
 extern void emacs_perror (char const *);
 
 extern void unlock_all_files (void);

=== modified file 'src/sysdep.c'
--- a/src/sysdep.c      2013-09-20 15:34:36 +0000
+++ b/src/sysdep.c      2013-10-07 08:05:00 +0000
@@ -2257,9 +2257,9 @@
    Return the number of bytes read, which might be less than NBYTE.
    On error, set errno and return -1.  */
 ptrdiff_t
-emacs_read (int fildes, char *buf, ptrdiff_t nbyte)
+emacs_read (int fildes, void *buf, ptrdiff_t nbyte)
 {
-  register ssize_t rtnval;
+  ssize_t rtnval;
 
   /* There is no need to check against MAX_RW_COUNT, since no caller ever
      passes a size that large to emacs_read.  */
@@ -2310,14 +2310,14 @@
    interrupted or if a partial write occurs.  Return the number of
    bytes written, setting errno if this is less than NBYTE.  */
 ptrdiff_t
-emacs_write (int fildes, char const *buf, ptrdiff_t nbyte)
+emacs_write (int fildes, void const *buf, ptrdiff_t nbyte)
 {
   return emacs_full_write (fildes, buf, nbyte, 0);
 }
 
 /* Like emacs_write, but also process pending signals if interrupted.  */
 ptrdiff_t
-emacs_write_sig (int fildes, char const *buf, ptrdiff_t nbyte)
+emacs_write_sig (int fildes, void const *buf, ptrdiff_t nbyte)
 {
   return emacs_full_write (fildes, buf, nbyte, 1);
 }


reply via email to

[Prev in Thread] Current Thread [Next in Thread]