public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla@sourceware.org>
To: gdb-prs@sourceware.org
Subject: [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
Date: Wed, 05 Aug 2020 16:11:55 +0000	[thread overview]
Message-ID: <bug-26197-4717-I2eFKvcoTp@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-26197-4717@http.sourceware.org/bugzilla/>

https://sourceware.org/bugzilla/show_bug.cgi?id=26197

--- Comment #15 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tom Tromey <tromey@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=57d02173a25465a5400fad3764568cefb8eae9ab

commit 57d02173a25465a5400fad3764568cefb8eae9ab
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Aug 5 09:52:55 2020 -0600

    Fix variant part regressions with older Rust compiler

    Older Rust compilers used special field names, rather than DWARF
    features, to express the variant parts of Rust enums.  This is handled
    in gdb through a quirk recognizer that rewrites the types.

    Tom de Vries pointed out in PR rust/26197 that the variant part
    rewrite regressed this code.  This patch fixes the problems:

    * Univariant enums were not handled properly.  Now we simply call
      alloc_rust_variant for these as well.

    * There was an off-by-one error in the handling of ordinary enums.

    * Ordinary enums should have the size of their member types reset to
      match the size of the enclosing enum.  (It's not clear to me if this
      is truly necessary, but it placates a test, and this is just legacy
      handling in any case.)

    Tested with Rust 1.12.0, 1.14.0, 1.19.0, 1.36.0, and 1.45.0 on x86-64
    Fedora 32.  There were some unrelated failures with 1.14.0 and 1.19,0;
    but considering that these are fairly old releases, I don't plan to
    look into them unless someone complains.

    Note that this patch will not fix all the issues in the PR.  In that
    PR, Tom is using a somewhat unusual build of Rust -- in particular it
    uses an older (pre-DWARF variant part) LLVM with a newer Rust.  I
    believe this compiler doesn't correctly implement the old-style name
    fallback; the details are in the bug.

    gdb/ChangeLog
    2020-08-05  Tom Tromey  <tromey@adacore.com>

            PR rust/26197:
            * dwarf2/read.c (alloc_rust_variant): Handle univariant case.
            (quirk_rust_enum): Call alloc_rust_variant for univariant case.
            Fix off-by-one and type size errors in ordinary case.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  parent reply	other threads:[~2020-08-05 16:11 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-02 15:01 [Bug rust/26197] New: " vries at gcc dot gnu.org
2020-07-02 15:01 ` [Bug rust/26197] " vries at gcc dot gnu.org
2020-07-02 15:02 ` vries at gcc dot gnu.org
2020-07-02 15:02 ` vries at gcc dot gnu.org
2020-07-02 15:02 ` vries at gcc dot gnu.org
2020-07-06  9:28 ` vries at gcc dot gnu.org
2020-07-12 21:20 ` tromey at sourceware dot org
2020-07-12 21:35 ` tromey at sourceware dot org
2020-07-13  9:25 ` vries at gcc dot gnu.org
2020-07-13  9:31 ` vries at gcc dot gnu.org
2020-07-14  1:52 ` tromey at sourceware dot org
2020-07-21 20:39 ` tromey at sourceware dot org
2020-07-22 12:55 ` brobecker at gnat dot com
2020-07-22 19:37 ` tromey at sourceware dot org
2020-07-22 19:40 ` tromey at sourceware dot org
2020-07-22 20:02 ` tromey at sourceware dot org
2020-07-22 20:13 ` tromey at sourceware dot org
2020-08-05 16:11 ` cvs-commit at gcc dot gnu.org [this message]
2020-08-05 17:52 ` tromey at sourceware dot org
2020-08-05 19:34 ` vries at gcc dot gnu.org
2020-08-12 21:31 ` tromey at sourceware dot org
2020-08-13 11:26 ` vries at gcc dot gnu.org
2020-08-13 12:43 ` tromey at sourceware dot org
2020-08-13 12:46 ` vries at gcc dot gnu.org
2020-08-13 14:13 ` tromey at sourceware dot org
2020-08-15  6:10 ` vries at gcc dot gnu.org
2020-08-17 16:49 ` cvs-commit at gcc dot gnu.org
2020-08-17 17:04 ` tromey at sourceware dot org
2020-08-17 17:09 ` tromey at sourceware dot org
2020-08-18  9:02 ` vries at gcc dot gnu.org
2020-08-18  9:34 ` vries at gcc dot gnu.org
2020-09-08 16:42 ` tromey at sourceware dot org
2020-09-10 18:39 ` tromey at sourceware dot org
2020-09-10 18:43 ` tromey at sourceware dot org
2020-09-15 15:27 ` cvs-commit at gcc dot gnu.org
2020-09-15 15:48 ` cvs-commit at gcc dot gnu.org
2020-09-15 15:48 ` tromey at sourceware 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-26197-4717-I2eFKvcoTp@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=gdb-prs@sourceware.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).