unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Herbert J. Skuhra" <herbert@mailbox.org>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: "C. Baxter" <m43cap@yandex.com>, emacs-devel@gnu.org
Subject: Re: USE_LSB_TAG not supported on this platform
Date: Tue, 09 Feb 2016 00:01:17 +0100	[thread overview]
Message-ID: <867fie4xj6.wl-herbert@mailbox.org> (raw)
In-Reply-To: <56B8F03C.3010709@cs.ucla.edu>

On Mon, 08 Feb 2016 20:45:00 +0100,
Paul Eggert <eggert@cs.ucla.edu> wrote:
> 
> On 02/07/2016 01:35 PM, Herbert J. Skuhra wrote:
> > On FreeBSD 11-CURRENT i386 (r295345)
> > 
> > - the emacs-devel port compiles with gcc only (tested with USE_GCC=5)
> > - even emacs-25 does not build with clang
> > - the breakage starts also with d6585a9 (using gcc5)
> 
> Thanks for pointing out these problems. Since this is a regression in
> emacs-25 we need to fix it there. Please try the latest version of
> emacs-25, which contains the attached patch. If this works it will be
> merged into master. It should work with clang as well as with GCC.

GCC 5 works but clang still fails. If I add

#define alignas _Alignas

to src/lisp.h the build succeeds.

----------
  CC       vm-limit.o
In file included from vm-limit.c:21:
./lisp.h:266:3: error: "alignas not defined"
# error "alignas not defined"
  ^
In file included from vm-limit.c:21:
In file included from ./lisp.h:741:
./globals.h:1046:29: error: expected parameter declarator
struct Lisp_Symbol alignas (GCALIGNMENT) lispsym[1081];
                            ^
./lisp.h:228:21: note: expanded from macro 'GCALIGNMENT'
#define GCALIGNMENT 8
                    ^
In file included from vm-limit.c:21:
In file included from ./lisp.h:741:
./globals.h:1046:29: error: expected ')'
./lisp.h:228:21: note: expanded from macro 'GCALIGNMENT'
#define GCALIGNMENT 8
                    ^
./globals.h:1046:28: note: to match this '('
struct Lisp_Symbol alignas (GCALIGNMENT) lispsym[1081];
                           ^
./globals.h:1046:42: error: expected function body after function declarator
struct Lisp_Symbol alignas (GCALIGNMENT) lispsym[1081];
                                         ^
In file included from vm-limit.c:21:
./lisp.h:858:10: error: use of undeclared identifier 'lispsym'
  return lisp_h_XSYMBOL (a);
         ^
./lisp.h:346:20: note: expanded from macro 'lisp_h_XSYMBOL'
                             + (char *) lispsym))
                                        ^
./lisp.h:1105:63: error: use of undeclared identifier 'lispsym'
  Lisp_Object a = XIL (TAG_SYMOFFSET ((char *) sym - (char *) lispsym));
                                                              ^
./lisp.h:719:53: note: expanded from macro 'TAG_SYMOFFSET'
#define TAG_SYMOFFSET(offset) TAG_PTR (Lisp_Symbol, offset)
                                                    ^
./lisp.h:714:18: note: expanded from macro 'TAG_PTR'
   ? (intptr_t) (ptr) + (tag) \
                 ^
./lisp.h:1105:63: error: use of undeclared identifier 'lispsym'
./lisp.h:719:53: note: expanded from macro 'TAG_SYMOFFSET'
#define TAG_SYMOFFSET(offset) TAG_PTR (Lisp_Symbol, offset)
                                                    ^
./lisp.h:715:66: note: expanded from macro 'TAG_PTR'
   : (EMACS_INT) (((EMACS_UINT) (tag) << VALBITS) + (uintptr_t) (ptr)))
                                                                 ^
./lisp.h:1113:28: error: use of undeclared identifier 'lispsym'
  return make_lisp_symbol (lispsym + index);
                           ^
./lisp.h:1573:22: error: use of undeclared identifier 'lispsym'
enum { NIL_IS_ZERO = XLI_BUILTIN_LISPSYM (iQnil) == 0 };
                     ^
./lisp.h:724:69: note: expanded from macro 'XLI_BUILTIN_LISPSYM'
#define XLI_BUILTIN_LISPSYM(iname) TAG_SYMOFFSET ((iname) * sizeof *lispsym)
                                                                    ^
./lisp.h:719:53: note: expanded from macro 'TAG_SYMOFFSET'
#define TAG_SYMOFFSET(offset) TAG_PTR (Lisp_Symbol, offset)
                                                    ^
./lisp.h:714:18: note: expanded from macro 'TAG_PTR'
   ? (intptr_t) (ptr) + (tag) \
                 ^
./lisp.h:1573:22: error: use of undeclared identifier 'lispsym'
./lisp.h:724:69: note: expanded from macro 'XLI_BUILTIN_LISPSYM'
#define XLI_BUILTIN_LISPSYM(iname) TAG_SYMOFFSET ((iname) * sizeof *lispsym)
                                                                    ^
./lisp.h:719:53: note: expanded from macro 'TAG_SYMOFFSET'
#define TAG_SYMOFFSET(offset) TAG_PTR (Lisp_Symbol, offset)
                                                    ^
./lisp.h:715:66: note: expanded from macro 'TAG_PTR'
   : (EMACS_INT) (((EMACS_UINT) (tag) << VALBITS) + (uintptr_t) (ptr)))
                                                                 ^
./lisp.h:1581:3: error: bit-field '_gl_verify_error_if_negative' has negative width (-1)
  verify (NIL_IS_ZERO);
  ^
../lib/verify.h:251:19: note: expanded from macro 'verify'
#define verify(R) _GL_VERIFY (R, "verify (" #R ")")
                  ^
../lib/verify.h:211:8: note: expanded from macro '_GL_VERIFY'
      [_GL_VERIFY_TRUE (R, DIAGNOSTIC)]
       ^
../lib/verify.h:176:15: note: expanded from macro '_GL_VERIFY_TRUE'
   (!!sizeof (_GL_VERIFY_TYPE (R, DIAGNOSTIC)))
              ^
../lib/verify.h:196:27: note: expanded from macro '_GL_VERIFY_TYPE'
    struct { unsigned int _gl_verify_error_if_negative: (R) ? 1 : -1; }
                          ^
11 errors generated.
Makefile:377: recipe for target 'vm-limit.o' failed
gmake[1]: *** [vm-limit.o] Error 1
gmake[1]: Leaving directory '/usr/home/herbert/source/emacs/src'
Makefile:394: recipe for target 'src' failed
gmake: *** [src] Error 2
----------

-- 
Herbert



  parent reply	other threads:[~2016-02-08 23:01 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-04  8:32 USE_LSB_TAG not supported on this platform C. Baxter
2016-02-04 13:24 ` Stefan Monnier
2016-02-04 15:51 ` Paul Eggert
2016-02-04 22:29 ` Herbert J. Skuhra
2016-02-05  1:22   ` Paul Eggert
2016-02-05  9:45     ` Colin Baxter
2016-02-06 10:55     ` Herbert J. Skuhra
2016-02-06 16:04       ` Herbert J. Skuhra
2016-02-07 15:11         ` Wolfgang Jenkner
2016-02-07 19:14           ` Herbert J. Skuhra
2016-02-07 21:35           ` Herbert J. Skuhra
2016-02-08 19:45             ` Paul Eggert
2016-02-08 20:14               ` Eli Zaretskii
2016-02-09  8:39                 ` Paul Eggert
2016-02-09 16:59                   ` Eli Zaretskii
2016-02-09 17:37                     ` Paul Eggert
2016-02-09 18:02                       ` Eli Zaretskii
2016-02-10 19:29                         ` Colin Baxter
2016-02-08 23:01               ` Herbert J. Skuhra [this message]
2016-02-09  1:10                 ` Paul Eggert
2016-02-09 11:12                   ` Herbert J. Skuhra
2016-02-09 23:37                     ` Paul Eggert
2016-02-09 15:53         ` Wolfgang Jenkner
2016-02-09 23:33         ` Paul Eggert
2016-02-06 20:34       ` Paul Eggert
2016-02-07 16:52         ` Herbert J. Skuhra
2016-02-07 21:34           ` Paul Eggert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=867fie4xj6.wl-herbert@mailbox.org \
    --to=herbert@mailbox.org \
    --cc=eggert@cs.ucla.edu \
    --cc=emacs-devel@gnu.org \
    --cc=m43cap@yandex.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).