public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "cvs-commit at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug d/98025] [11 Regression][CET] libphobos: dub segfaults when built with gdc 11
Date: Fri, 27 Nov 2020 20:28:41 +0000	[thread overview]
Message-ID: <bug-98025-4-TvKw73m80o@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-98025-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98025

--- Comment #1 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain Buclaw <ibuclaw@gcc.gnu.org>:

https://gcc.gnu.org/g:5dbab7b3f4d3a8298aeb8ecde1cfbc4b16913d28

commit r11-5506-g5dbab7b3f4d3a8298aeb8ecde1cfbc4b16913d28
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date:   Fri Nov 27 13:15:44 2020 +0100

    libphobos: Fix segfault at run-time when using custom Fibers (PR 98025)

    When libphobos is configured with --enable-cet, this adds extra fields
    to the Fiber class to support the ucontext_t fallback implementation.
    These fields get omitted when compiling user code unless they also used
    `-fversion=CET' to build their project, which resulted in data being
    overwritten from within swapcontext().

    On reviewing the ucontext_t definitions, it was found that the shadow
    stack fields were missing, and the struct size didn't match up on X32.
    This has been fixed in upstream druntime and merged down here.

    Reviewed-on: https://github.com/dlang/druntime/pull/3293

    libphobos/ChangeLog:

            PR d/98025
            * Makefile.in: Regenerate.
            * configure: Regenerate.
            * configure.ac (DCFG_ENABLE_CET): Substitute.
            * libdruntime/MERGE: Merge upstream druntime 0fe7974c.
            * libdruntime/Makefile.in: Regenerate.
            * libdruntime/core/thread.d: Import gcc.config.
            (class Fiber): Add ucontext_t fields when GNU_Enable_CET is true.
            * libdruntime/gcc/config.d.in (GNU_Enable_CET): Define.
            * src/Makefile.in: Regenerate.
            * testsuite/Makefile.in: Regenerate.

  parent reply	other threads:[~2020-11-27 20:28 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-27  9:20 [Bug d/98025] New: " ibuclaw at gdcproject dot org
2020-11-27 10:53 ` [Bug d/98025] " rguenth at gcc dot gnu.org
2020-11-27 20:28 ` cvs-commit at gcc dot gnu.org [this message]
2020-11-27 20:34 ` ibuclaw at gdcproject dot org

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

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

  git send-email \
    --in-reply-to=bug-98025-4-TvKw73m80o@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /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.
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).