emacs-devel
[Top][All Lists]
Advanced

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

Re: Anyone building Emacs trunk with MinGW w64 (32 bits)


From: Óscar Fuentes
Subject: Re: Anyone building Emacs trunk with MinGW w64 (32 bits)
Date: Tue, 26 Mar 2013 21:17:23 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

Eli Zaretskii <address@hidden> writes:

> The latest trunk avoids defining HAVE__SETJMP for MinGW64, in
> nt/config.nt (did you remember to run configure.bat?):
>
>   /* Define to 1 if _setjmp and _longjmp work.  MinGW64 uses a
>      2-argument _setjmp, and setjmp is a macro defined to supply the 2nd
>      arg correctly, so don't use _setjmp directly in that case.  */
>   #ifndef _W64
>   #define HAVE__SETJMP 1
>   #endif
>
> And HAVE_SIGSETJMP is not defined in the MinGW build.  So the above
> snippet from lisp.h should have define sys_setjmp as a call to setjmp,
> not to _setjmp.  And setjmp is defined as follows on MinGW64's
> setjmp.h header file:
>
>   #define setjmp(BUF) _setjmp((BUF), __builtin_frame_address (0))
>
> So why isn't this working? why eval.c somehow calls _setjmp with only
> 1 argument?

While compiling eval.c, at the time config.h is preprocessed _W64 is
undefined because no MinGW header was #included yet.




reply via email to

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