unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Fabrice Popineau <fabrice.popineau@gmail.com>
To: 李丁 <iamliding@gmail.com>
Cc: 13939 <13939@debbugs.gnu.org>
Subject: bug#13939: 24.3; Emacs 24.3 release won't compile on Windows with the msvc toolchain
Date: Fri, 15 Mar 2013 16:24:59 +0100	[thread overview]
Message-ID: <CAFgFV9ObQGpfT9mwVcU34pKwtLzYdcxJUPPs3tpkjaQp_gVGSw@mail.gmail.com> (raw)
In-Reply-To: <CAFEVBLsVee_oFstXdgeZN3piHX3qJhJO+N7cqSEOzjOaEY8MDw@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4456 bytes --]

I guess this ends the hunt for what change fixed 24.3 for msvc.
I spent several hours trying to track it down, but couldn't. My closest
guest
is among the vector/list reading code. Lots of changes happened in this
area.
Nothing very obvious anyway.

It is very unlucky, because I compile the trunk quite often and this bug
never surfaced
for quite a long time (pre 24.1).

I guess the best option is to use the trunk as per Eli's proposal.

Fabrice


2013/3/15 李丁 <iamliding@gmail.com>

> Though there are some minor errors (easy to fix), the latest trunk
> compiles fine with msvc.
>
> 2013/3/15 Fabrice Popineau <fabrice.popineau@gmail.com>
>
>> 李丁:  could you try to compile the trunk with msvc and confirm that it is
>> working for you?
>> I would be very glad to hear a positive report, meaning I didn't mess
>> things up.
>>
>> Fabrice
>>
>>
>> 2013/3/15 李丁 <iamliding@gmail.com>
>>
>>> 李丁, do you also compile Emacs 24.3 as a 64-bit executable?  Or do
>>>> you build it as a 32-bit executable?
>>>
>>>
>>> I compiled Emacs as a 32-bit executable.
>>>
>>> If I run only temacs.exe without any arguments, I get a very quick
>>>> backtrace:
>>>
>>>
>>> I also traced the execution of `temacs -batch -l loadup dump' with
>>> windbg, and got a similar stack trace as Fabrice (I breakpointed
>>> Fgarbage_collect):
>>>
>>> temacs!Fgarbage_collect [d:\data\projects\emacs-24.3\src\alloc.c @ 5094]
>>> temacs!maybe_gc+0x3e [d:\data\projects\emacs-24.3\src\lisp.h @ 3717]
>>>  temacs!eval_sub+0xda [d:\data\projects\emacs-24.3\src\eval.c @ 2042]
>>> temacs!readevalloop+0x600 [d:\data\projects\emacs-24.3\src\lread.c @
>>> 1843]
>>> temacs!Fload+0xb86 [d:\data\projects\emacs-24.3\src\lread.c @ 1317]
>>> temacs!eval_sub+0x5da [d:\data\projects\emacs-24.3\src\eval.c @ 2159]
>>> temacs!Feval+0x60 [d:\data\projects\emacs-24.3\src\eval.c @ 2005]
>>> temacs!top_level_2+0x15 [d:\data\projects\emacs-24.3\src\keyboard.c @
>>> 1177]
>>> temacs!internal_condition_case+0xde
>>> [d:\data\projects\emacs-24.3\src\eval.c @ 1289]
>>> temacs!top_level_1+0x26 [d:\data\projects\emacs-24.3\src\keyboard.c @
>>> 1185]
>>> temacs!internal_catch+0x97 [d:\data\projects\emacs-24.3\src\eval.c @
>>> 1060]
>>> temacs!command_loop+0x69 [d:\data\projects\emacs-24.3\src\keyboard.c @
>>> 1146]
>>> temacs!recursive_edit_1+0x71 [d:\data\projects\emacs-24.3\src\keyboard.c
>>> @ 779]
>>> temacs!Frecursive_edit+0x101 [d:\data\projects\emacs-24.3\src\keyboard.c
>>> @ 844]
>>> temacs!main+0xae7 [d:\data\projects\emacs-24.3\src\emacs.c @ 1530]
>>> temacs!__tmainCRTStartup+0x1bf
>>> [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 555]
>>> temacs!mainCRTStartup+0xf
>>> [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 371]
>>> temacs!_start+0x62 [d:\data\projects\emacs-24.3\src\unexw32.c @ 134]
>>>
>>>
>>> When I stepped out Fgarbage_collect, the error occurred just after this
>>> gc at here in eval_sub:
>>>
>>> if (!CONSP (fun))
>>> xsignal1 (Qinvalid_function, original_fun);
>>>
>>> I also tried removing most of loadup.el, and temacs can execute only the
>>> first few lines, and even an additional `(+ 1 1)' caused temacs to exit
>>> with the "DEAD" message. As I previously reported, I guess that the first
>>> garbage collection cycle does not mark any read-in form, thus all of them
>>> are collected (and their car set to Vdead).
>>>
>>>
>>> 2013/3/15 Eli Zaretskii <eliz@gnu.org>
>>>
>>>>  > From: Fabrice Popineau <fabrice.popineau@gmail.com>
>>>> > Date: Thu, 14 Mar 2013 20:28:45 +0100
>>>> > Cc: 李丁 <iamliding@gmail.com>, 13939 <13939@debbugs.gnu.org>
>>>> >
>>>> > I tried importing this change in editfns.c but it doesn't change
>>>> anything.
>>>> >
>>>> > If I run only temacs.exe without any arguments, I get a very quick
>>>> > backtrace:
>>>> >
>>>> > C:\>"C:\Source\XEmTeX\emacs\emacs-24.3\src/obj-spd/AMD64/temacs.exe"
>>>> > Loading loadup.el (source)...
>>>> > Invalid function: "DEAD"
>>>> >
>>>> > > temacs.exe!eval_sub(__int64 form) Line 2195 C
>>>> >   temacs.exe!readevalloop(__int64 readcharfun, _iobuf * stream,
>>>> __int64
>>>> > sourcename, char printflag, __int64 unibyte, __int64 readfun, __int64
>>>> > start, __int64 end) Line 1845 C
>>>>
>>>> Thanks.
>>>>
>>>> 李丁, do you also compile Emacs 24.3 as a 64-bit executable?  Or do
>>>> you build it as a 32-bit executable?
>>>>
>>>
>>>
>>
>

[-- Attachment #2: Type: text/html, Size: 9720 bytes --]

  reply	other threads:[~2013-03-15 15:24 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-12 22:47 bug#13939: 24.3; Emacs 24.3 release won't compile on Windows with the msvc toolchain 李丁
2013-03-13 18:40 ` Eli Zaretskii
2013-03-14 15:13   ` Fabrice Popineau
2013-03-14 18:06     ` Eli Zaretskii
2013-03-14 19:28       ` Fabrice Popineau
2013-03-14 20:02         ` Eli Zaretskii
2013-03-14 21:06           ` Fabrice Popineau
2013-03-15  7:20             ` Eli Zaretskii
2013-03-14  1:21 ` 李丁
2013-03-14  7:45   ` Fabrice Popineau
2013-03-15  5:45 ` 李丁
2013-03-15  9:39   ` Fabrice Popineau
2013-03-15 15:07     ` 李丁
2013-03-15 15:24       ` Fabrice Popineau [this message]
2013-03-15 15:43         ` Eli Zaretskii
2013-03-15 19:49         ` Fabrice Popineau
2013-03-15 20:02           ` Eli Zaretskii
2013-03-15 15:34       ` Eli Zaretskii
2013-03-16  6:12         ` 李丁
2013-03-16  8:57           ` Eli Zaretskii
2013-03-16 15:31             ` 李丁
2013-03-16 15:58               ` Eli Zaretskii
2013-03-17  2:58                 ` 李丁
2013-03-17  8:43                   ` Fabrice Popineau
2013-03-17 18:36                     ` Eli Zaretskii

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=CAFgFV9ObQGpfT9mwVcU34pKwtLzYdcxJUPPs3tpkjaQp_gVGSw@mail.gmail.com \
    --to=fabrice.popineau@gmail.com \
    --cc=13939@debbugs.gnu.org \
    --cc=iamliding@gmail.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).