Subject: Re: bug#15880: Compute C declarations for DEFSYMs automatically.

From: Eli Zaretskii <[email-masked]>
Date: Mon, 05 Jan 2015 20:56:36 +0200

> Date: Mon, 05 Jan 2015 10:17:00 -0800
> From: Paul Eggert <[email-masked]>
> Cc: [email-masked]
> 
> Thanks for the review.  I'll try to think of a simpler way for MSB 
> hosts, though that isn't a high priority.  I installed it and am marking 
> this as done.

Did you try to build with --enable-checking?  It fails to compile for
me:

  In file included from dispnew.c:26:0:
  lisp.h:209:23: error: expected ')' before '||' token
      (suppress_checking || (cond)     \
			 ^
  lisp.h:360:5: note: in expansion of macro 'eassert'
      (eassert (SYMBOLP (a)), \
       ^
  lisp.h:405:21: note: in expansion of macro 'lisp_h_XSYMBOL'
   # define XSYMBOL(a) lisp_h_XSYMBOL (a)
		       ^
  lisp.h:612:28: note: in expansion of macro 'XSYMBOL'
   INLINE struct Lisp_Symbol *XSYMBOL (Lisp_Object);
			      ^
  lisp.h:360:26: error: expected ')' before ',' token
      (eassert (SYMBOLP (a)), \
			    ^
  lisp.h:405:21: note: in expansion of macro 'lisp_h_XSYMBOL'
   # define XSYMBOL(a) lisp_h_XSYMBOL (a)
		       ^
  lisp.h:612:28: note: in expansion of macro 'XSYMBOL'
   INLINE struct Lisp_Symbol *XSYMBOL (Lisp_Object);
			      ^
  In file included from lisp.h:743:0,
		   from dispnew.c:26:
  globals.h:1407:24: error: expected declaration specifiers or '...' before '(' token
   #define aQCloaded_from (&lispsym[70])
			  ^
  globals.h:1408:41: note: in expansion of macro 'aQCloaded_from'
   #define QCloaded_from make_lisp_symbol (aQCloaded_from)
					   ^
  w32.h:175:20: note: in expansion of macro 'QCloaded_from'
   extern Lisp_Object QCloaded_from;
		      ^
  Makefile:354: recipe for target `dispnew.o' failed