unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Richard Copley <rcopley@gmail.com>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: 29040@debbugs.gnu.org
Subject: bug#29040: Emacs 25 hangs on windows arbitrarily during search of a unicode file
Date: Thu, 2 Nov 2017 07:43:34 +0000	[thread overview]
Message-ID: <CAPM58og-a1k+xgNZiXEAA5ZUOJAnCS+KoM4mTxVunBhAHUB9TQ@mail.gmail.com> (raw)
In-Reply-To: <e30d771e-aeeb-72cc-ad0b-e46f8629f2bb@cs.ucla.edu>

On 2 November 2017 at 06:02, Paul Eggert <eggert@cs.ucla.edu> wrote:
>> +#define THREAD_ALIGNMENT COMMON_MULTIPLE (alignof (max_align_t),
>> GCALIGNMENT)
>> +
>> +static struct thread_state alignas (THREAD_ALIGNMENT) main_thread;
>
> Three questions:
>
> The Gnulib manual
> <https://www.gnu.org/software/gnulib/manual/html_node/stdalign_002eh.html>
> says, "Some compilers require the operand of _Alignas/alignas to be a single
> integer constant, not an expression: MSVC 7.0 through at least 10.0." (Also,
> <https://stackoverflow.com/questions/7895869/cross-platform-alignx-macro>
> suggests that this issue may also occur with VS2013, though VS2015 should be
> OK since it supports alignas.) Are any of these older compilers of concern
> when building Emacs?

I don't think so. How would one go about building Emacs with MSVC anyway?

>If so, the above change won't work for them.

> Why does the above code use 'alignof (max_align_t)' rather than 'alignof
> (struct thread_state)'? Doesn't the latter suffice?

For information, in the 64-bit GCC 7.2 toolchain from MinGW-W64, the two
are equal in value.

> C11 requires that a compiler must issue a diagnostic for a declaration like
> 'struct thread_state alignas (8) foo;' if the alignment of plain 'struct
> state' is greater than 8. Can I take it from this bug report that the
> Microsoft compilers do not conform to that part of the standard?

Microsoft compilers weren't mentioned at all. GCC didn't issue
a diagnostic.

> If so, we should add checks to verify this requirement where it is assumed elsewhere.

I think that is a good idea.

Thanks.





  reply	other threads:[~2017-11-02  7:43 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-28 13:40 bug#29040: emacs-26 crash due to misaligned longjmp buffer in 64-bit MSYS2/MinGW-W64 build Richard Copley
2017-10-28 13:55 ` Eli Zaretskii
2017-10-28 14:10 ` bug#29040: Trouble with misaligned jmp_buf in 64-bit MinGW-64 runtime, in Emacs 26 Richard Copley
2017-11-02  6:02 ` bug#29040: Emacs 25 hangs on windows arbitrarily during search of a unicode file Paul Eggert
2017-11-02  7:43   ` Richard Copley [this message]
2017-11-02 11:10     ` Noam Postavsky
2017-11-02 15:50   ` Eli Zaretskii
2017-11-02 20:35     ` Paul Eggert
2017-11-02 20:46       ` Eli Zaretskii
2017-11-03  5:03         ` Paul Eggert
2017-11-03  8:37           ` Eli Zaretskii
2017-11-03  8:48             ` Paul Eggert
2017-11-03  8:50           ` Eli Zaretskii
2017-11-03  9:25             ` Paul Eggert
2017-11-03 10:02               ` Eli Zaretskii
     [not found] <CAGdT1gr9mOiB7Vcx+adyknAfpvTiUSZuxZzAXJo7ivh91HMgww@mail.gmail.com>
     [not found] ` <837evrerok.fsf@gnu.org>
     [not found]   ` <CAPM58ojq+XSimHbAF8kt=0GBPTfX+9XkWdkfj0cJ_EPz-=Y_-A@mail.gmail.com>
     [not found]     ` <83mv4b5x0y.fsf@gnu.org>
     [not found]       ` <CAPM58oj0xajqLUowznia7z=d6yL7Qk4AqbaL9KzKnJw7EXPY=w@mail.gmail.com>
     [not found]         ` <83inez5uta.fsf@gnu.org>
     [not found]           ` <CAPM58oj9AnC90N+NiS4z_wP3EO5Xz3QtgdZUONqXLyhYR94NPA@mail.gmail.com>
     [not found]             ` <CAPM58oj6HBWkv0K=M0iy1xVPqQ0JTtFCEAZG8oW2SMrO8-XkcA@mail.gmail.com>
     [not found]               ` <83fua35tem.fsf@gnu.org>
2017-10-28 13:56                 ` Richard Copley
2017-10-28 14:14                   ` Eli Zaretskii
2017-10-28 15:58                     ` Eli Zaretskii
2017-10-28 16:16                       ` Richard Copley
2017-10-28 16:41                         ` Eli Zaretskii
2017-10-29 18:10                           ` Richard Copley
2017-11-01 19:16                             ` Richard Copley
2017-11-02  7:39                               ` Richard Copley

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=CAPM58og-a1k+xgNZiXEAA5ZUOJAnCS+KoM4mTxVunBhAHUB9TQ@mail.gmail.com \
    --to=rcopley@gmail.com \
    --cc=29040@debbugs.gnu.org \
    --cc=eggert@cs.ucla.edu \
    /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).