emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs-25 3ace730: Attempt to fix 64-bit AIX build


From: Eli Zaretskii
Subject: [Emacs-diffs] emacs-25 3ace730: Attempt to fix 64-bit AIX build
Date: Fri, 23 Dec 2016 20:27:20 +0000 (UTC)

branch: emacs-25
commit 3ace7309476e1899a67ba2883a0003afe9d48d4d
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Attempt to fix 64-bit AIX build
    
    * src/unexaix.c (make_hdr, copy_text_and_data, write_segment): Fix
    type-casts that assumed 32-bit pointers.  (Bug#25141)
---
 src/unexaix.c |   10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/unexaix.c b/src/unexaix.c
index c2012f7..5685aee 100644
--- a/src/unexaix.c
+++ b/src/unexaix.c
@@ -245,15 +245,15 @@ make_hdr (int new, int a_out,
 
       if (f_thdr == 0)
        {
-         ERROR1 ("unexec: couldn't find \"%s\" section", (int) _TEXT);
+         ERROR1 ("unexec: couldn't find \"%s\" section", _TEXT);
        }
       if (f_dhdr == 0)
        {
-         ERROR1 ("unexec: couldn't find \"%s\" section", (int) _DATA);
+         ERROR1 ("unexec: couldn't find \"%s\" section", _DATA);
        }
       if (f_bhdr == 0)
        {
-         ERROR1 ("unexec: couldn't find \"%s\" section", (int) _BSS);
+         ERROR1 ("unexec: couldn't find \"%s\" section", _BSS);
        }
     }
   else
@@ -382,7 +382,7 @@ copy_text_and_data (int new)
   write_segment (new, ptr, end);
 
   lseek (new, data_scnptr, SEEK_SET);
-  ptr = (char *) f_ohdr.data_start;
+  ptr = (char *) (ptrdiff_t) f_ohdr.data_start;
   end = ptr + f_ohdr.dsize;
   write_segment (new, ptr, end);
 
@@ -399,7 +399,7 @@ write_segment (int new, char *ptr, char *end)
   for (i = 0; ptr < end;)
     {
       /* distance to next block.  */
-      nwrite = (((int) ptr + UnexBlockSz) & -UnexBlockSz) - (int) ptr;
+      nwrite = (((ptrdiff_t) ptr + UnexBlockSz) & -UnexBlockSz) - (ptrdiff_t) 
ptr;
       /* But not beyond specified end.  */
       if (nwrite > end - ptr) nwrite = end - ptr;
       ret = write (new, ptr, nwrite);



reply via email to

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