emacs-devel
[Top][All Lists]
Advanced

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

Re: Lisp_Marker size on 32bit systems


From: Paul Eggert
Subject: Re: Lisp_Marker size on 32bit systems
Date: Fri, 7 Sep 2018 06:45:48 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1

Eli Zaretskii wrote:
The current master fails to build in the x86 32-bit configuration with
wide ints:

   In file included from lisp.h:35:0,
                   from window.c:25:
   ../lib/verify.h:207:21: error: static assertion failed: "verify (header_size == 
sizeof (union vectorlike_header))"

It works for me in that configuration in Fedora 28. I get the following values; what do you get?

sizeof (ptrdiff_t) = 4
sizeof (union vectorlike_header) = 4
offsetof (struct Lisp_Vector, contents) = 4
offsetof (struct Lisp_Sub_Char_Table, depth) == 4
offsetof (struct Lisp_Sub_Char_Table, contents) == 12

If you're getting different values, it could be that the fact that the code ever worked at all is just luck.

I am using gcc 8.1.1 20180712 (Red Hat 8.1.1-5), and configure this way (because many modules don't work in 32-bit mode):

./configure --with-wide-int CC=gcc -m32 -march=native --enable-gcc-warnings --without-sound --without-dbus --without-file-notification --without-gconf --without-gif --without-gsettings --without-imagemagick --without-rsvg --with-x-toolkit=no --with-modules




reply via email to

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