public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7
@ 2020-07-02 15:01 vries at gcc dot gnu.org
  2020-07-02 15:01 ` [Bug rust/26197] " vries at gcc dot gnu.org
                   ` (35 more replies)
  0 siblings, 36 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-02 15:01 UTC (permalink / raw)
  To: gdb-prs

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

            Bug ID: 26197
           Summary: rust FAILs with rustc 1.36.0 and llvm 7
           Product: gdb
           Version: HEAD
            Status: NEW
          Severity: normal
          Priority: P2
         Component: rust
          Assignee: unassigned at sourceware dot org
          Reporter: vries at gcc dot gnu.org
  Target Milestone: ---

With rustc 1.36.0 and llvm 7:
...
$ rustc --version -v
rustc 1.36.0
binary: rustc
commit-hash: unknown
commit-date: unknown
host: x86_64-unknown-linux-gnu
release: 1.36.0
LLVM version: 7.0
...
I get these FAILs:
...
FAIL: gdb.rust/simple.exp: print univariant
FAIL: gdb.rust/simple.exp: print univariant.a
FAIL: gdb.rust/simple.exp: print univariant_anon
FAIL: gdb.rust/simple.exp: print univariant_anon.0
FAIL: gdb.rust/simple.exp: print univariant_anon.sss
FAIL: gdb.rust/simple.exp: ptype simple::Univariant (pattern 1)
FAIL: gdb.rust/simple.exp: ptype simple::UnivariantAnon (pattern 1)
FAIL: gdb.rust/simple.exp: print e
FAIL: gdb.rust/simple.exp: print e2
FAIL: gdb.rust/simple.exp: print e.0
FAIL: gdb.rust/simple.exp: print e.1
FAIL: gdb.rust/simple.exp: print e.foo
FAIL: gdb.rust/simple.exp: print e2.variant
FAIL: gdb.rust/simple.exp: print e2.notexist
FAIL: gdb.rust/simple.exp: print e2.0
FAIL: gdb.rust/simple.exp: print str_some
FAIL: gdb.rust/simple.exp: print str_none
FAIL: gdb.rust/simple.exp: print int_some
FAIL: gdb.rust/simple.exp: print int_none
FAIL: gdb.rust/simple.exp: print custom_some
FAIL: gdb.rust/simple.exp: print custom_none
FAIL: gdb.rust/simple.exp: print nonzero_offset
FAIL: gdb.rust/simple.exp: python print(e.type.fields()[1].name)
FAIL: gdb.rust/simple.exp: python
print(gdb.lookup_type('simple::MoreComplicated').dynamic)
FAIL: gdb.rust/rust-style.exp: print v
...

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
@ 2020-07-02 15:01 ` vries at gcc dot gnu.org
  2020-07-02 15:02 ` vries at gcc dot gnu.org
                   ` (34 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-02 15:01 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #1 from Tom de Vries <vries at gcc dot gnu.org> ---
Created attachment 12679
  --> https://sourceware.org/bugzilla/attachment.cgi?id=12679&action=edit
gdb.sum.gz

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 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
                   ` (33 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-02 15:02 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #2 from Tom de Vries <vries at gcc dot gnu.org> ---
Created attachment 12680
  --> https://sourceware.org/bugzilla/attachment.cgi?id=12680&action=edit
gdb.log.gz

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 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
                   ` (32 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-02 15:02 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #3 from Tom de Vries <vries at gcc dot gnu.org> ---
Created attachment 12681
  --> https://sourceware.org/bugzilla/attachment.cgi?id=12681&action=edit
rust-style.gz

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  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
                   ` (31 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-02 15:02 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #4 from Tom de Vries <vries at gcc dot gnu.org> ---
Created attachment 12682
  --> https://sourceware.org/bugzilla/attachment.cgi?id=12682&action=edit
simple.gz

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  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
                   ` (30 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-06  9:28 UTC (permalink / raw)
  To: gdb-prs

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

Tom de Vries <vries at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tromey at sourceware dot org

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  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
                   ` (29 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-12 21:20 UTC (permalink / raw)
  To: gdb-prs

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

Tom Tromey <tromey at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at sourceware dot org   |tromey at sourceware dot org

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  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
                   ` (28 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-12 21:35 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #5 from Tom Tromey <tromey at sourceware dot org> ---
Some of this seems to be maybe the upstream rust change
we diagnosed last time around?  Where the old-style "DISR"
stuff got mutated (probably also by me)?

I have a patch that improves some of it.
I'm still looking into some other failures.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  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
                   ` (27 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-13  9:25 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #6 from Tom de Vries <vries at gcc dot gnu.org> ---
FTR, this is a regression since commit a1520ad8fc "Fix bug in quirk_rust_enum".

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  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
                   ` (26 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-07-13  9:31 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #7 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom Tromey from comment #5)
> Some of this seems to be maybe the upstream rust change
> we diagnosed last time around?  Where the old-style "DISR"
> stuff got mutated (probably also by me)?
> 

Well, the trigger for the FAIL is the gdb commit mentioned above.

If the cause of the FAIL is this (
https://github.com/rust-lang/rust/issues/65204 ) rustc bug (I'm guessing this
is what you're referring to), we can add xfails , as we did in commit
a50faaf620 "[gdb/testsuite] Add XFAILs in gdb.rust/simple.exp for incorrect
DWARF".

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  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
                   ` (25 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-14  1:52 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #8 from Tom Tromey <tromey at sourceware dot org> ---
Consider the NonZeroOptimized enum from your executable

 <2><42c2>: Abbrev Number: 11 (DW_TAG_union_type)
    <42c3>   DW_AT_name        : (indirect string, offset: 0x2f62):
NonZeroOptimized
    <42c7>   DW_AT_byte_size   : 24
    <42c8>   DW_AT_alignment   : 8
 <3><42c9>: Abbrev Number: 9 (DW_TAG_member)
    <42ca>   DW_AT_name        : (indirect string, offset: 0x26ea):
RUST$ENCODED$ENUM$0$Empty
    <42ce>   DW_AT_type        : <0x42d5>
    <42d2>   DW_AT_alignment   : 8
    <42d3>   DW_AT_data_member_location: 0

This means that slot 0 of the value is the discriminant, where 0
means it is the empty enum "Empty", and nonzero means it is the value.

However when we look at the type of the member:

 <2><42d5>: Abbrev Number: 8 (DW_TAG_structure_type)
    <42d6>   DW_AT_name        : (indirect string, offset: 0x2704): Value
    <42da>   DW_AT_byte_size   : 24
    <42db>   DW_AT_alignment   : 8
 <3><42dc>: Abbrev Number: 9 (DW_TAG_member)
    <42dd>   DW_AT_name        : (indirect string, offset: 0x67c): __0
    <42e1>   DW_AT_type        : <0x44f2>
    <42e5>   DW_AT_alignment   : 8
    <42e6>   DW_AT_data_member_location: 0


Now we can drill down some more to see what the special __0 member's
type looks like:

 <3><44f2>: Abbrev Number: 8 (DW_TAG_structure_type)
    <44f3>   DW_AT_name        : (indirect string, offset: 0x84c0b): String
    <44f7>   DW_AT_byte_size   : 24
    <44f8>   DW_AT_alignment   : 8
 <4><44f9>: Abbrev Number: 9 (DW_TAG_member)
    <44fa>   DW_AT_name        : (indirect string, offset: 0x2dac7): vec
    <44fe>   DW_AT_type        : <0x450b>
    <4502>   DW_AT_alignment   : 8
    <4503>   DW_AT_data_member_location: 0

Oops, it is a 24 byte structure type.

This seems wrong to me, I'd expect a pointer type here instead,
or a sequence of $0$nnn$mmm$... values to select such a field.

Perhaps this is another case where that rust bug you linked to causes
problems?  Though you say it worked before.  I can't try an older
gdb right now, but I hope to get to it eventually.  I wonder if it
worked by accident or if assuming the whole 24 bytes is 0 is ok.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  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
                   ` (24 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-21 20:39 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #9 from Tom Tromey <tromey at sourceware dot org> ---
To my surprise I was able to reproduce this with rust 1.12.
I don't know why I didn't see that when doing the variant
part work :(

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  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
                   ` (23 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: brobecker at gnat dot com @ 2020-07-22 12:55 UTC (permalink / raw)
  To: gdb-prs

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

Joel Brobecker <brobecker at gnat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |10.1
                 CC|                            |brobecker at gnat dot com

--- Comment #10 from Joel Brobecker <brobecker at gnat dot com> ---
As requested by TomT, setting target milestone to 10.1 because this is a
regression (came from the variant rewrite).

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (11 preceding siblings ...)
  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
                   ` (22 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-22 19:37 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #11 from Tom Tromey <tromey at sourceware dot org> ---
> FAIL: gdb.rust/simple.exp: python print(gdb.lookup_type('simple::MoreComplicated').dynamic)

I think this one fails because gdb finds the underlying
enum type rather than the type it ought to find.
However, that's because both types appear in the DWARF
with the same name.
I probably won't try to fix this one, as it is a consequence
of this strange DWARF.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (12 preceding siblings ...)
  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
                   ` (21 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-22 19:40 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #12 from Tom Tromey <tromey at sourceware dot org> ---
FWIW with rust 1.12 I get these FAILs:

FAIL: gdb.rust/simple.exp: print univariant
FAIL: gdb.rust/simple.exp: print univariant.a
FAIL: gdb.rust/simple.exp: print univariant_anon
FAIL: gdb.rust/simple.exp: print univariant_anon.0
FAIL: gdb.rust/simple.exp: print univariant_anon.sss
FAIL: gdb.rust/simple.exp: ptype simple::Univariant (pattern 1)
FAIL: gdb.rust/simple.exp: ptype simple::UnivariantAnon (pattern 1)
FAIL: gdb.rust/simple.exp: print e
FAIL: gdb.rust/simple.exp: print e2
FAIL: gdb.rust/simple.exp: print e.0
FAIL: gdb.rust/simple.exp: print e.1
FAIL: gdb.rust/simple.exp: print e.foo
FAIL: gdb.rust/simple.exp: print e2.variant
FAIL: gdb.rust/simple.exp: print e2.notexist
FAIL: gdb.rust/simple.exp: print e2.0
FAIL: gdb.rust/simple.exp: print int_some
FAIL: gdb.rust/simple.exp: print int_none
FAIL: gdb.rust/simple.exp: print nonzero_offset
FAIL: gdb.rust/simple.exp: python print(e.type.fields()[1].name)
FAIL: gdb.rust/simple.exp: python
print(gdb.lookup_type('simple::MoreComplicated').dynamic)


At least the last one isn't a bug, but maybe the others are.
I have patches for a number of them.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (13 preceding siblings ...)
  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
                   ` (20 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-22 20:02 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #13 from Tom Tromey <tromey at sourceware dot org> ---
Note with 1.12, the name referenced in comment #8 is

 <2><894>: Abbrev Number: 14 (DW_TAG_union_type)
    <895>   DW_AT_name        : (indirect string, offset: 0x1415):
NonZeroOptimized
    <899>   DW_AT_byte_size   : 24
 <3><89a>: Abbrev Number: 13 (DW_TAG_member)
    <89b>   DW_AT_name        : (indirect string, offset: 0x13eb):
RUST$ENCODED$ENUM$0$0$0$0$0$0$Empty
    <89f>   DW_AT_type        : <0x8a5>
    <8a3>   DW_AT_data_member_location: 0


... which is what I would expect, this is the "drill down"
situation I mentioned there.

So, I think your compiler just has a bug here.

I've fixed the other 1.12 regressions though.
Thank you for pointing this all out.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (14 preceding siblings ...)
  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
                   ` (19 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-07-22 20:13 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #14 from Tom Tromey <tromey at sourceware dot org> ---
https://sourceware.org/pipermail/gdb-patches/2020-July/170764.html

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (15 preceding siblings ...)
  2020-07-22 20:13 ` tromey at sourceware dot org
@ 2020-08-05 16:11 ` cvs-commit at gcc dot gnu.org
  2020-08-05 17:52 ` tromey at sourceware dot org
                   ` (18 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-08-05 16:11 UTC (permalink / raw)
  To: gdb-prs

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.

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (16 preceding siblings ...)
  2020-08-05 16:11 ` cvs-commit at gcc dot gnu.org
@ 2020-08-05 17:52 ` tromey at sourceware dot org
  2020-08-05 19:34 ` vries at gcc dot gnu.org
                   ` (17 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-08-05 17:52 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #16 from Tom Tromey <tromey at sourceware dot org> ---
I'm inclined to close this on the theory that this patch takes
things as far as possible.
However, I thought I'd ask first -- can you try it and see how
it fares?
I'd still expect some failures I guess, given the analysis.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (17 preceding siblings ...)
  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
                   ` (16 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-08-05 19:34 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #17 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom Tromey from comment #16)
> I'm inclined to close this on the theory that this patch takes
> things as far as possible.
> However, I thought I'd ask first -- can you try it and see how
> it fares?
> I'd still expect some failures I guess, given the analysis.

...
FAIL: gdb.rust/simple.exp: print str_some
FAIL: gdb.rust/simple.exp: print str_none
FAIL: gdb.rust/simple.exp: print custom_some
FAIL: gdb.rust/simple.exp: print custom_none
FAIL: gdb.rust/simple.exp: python
print(gdb.lookup_type('simple::MoreComplicated').dynamic)
...

In more detail:
...
(gdb) print str_some^M
That operation is not available on integers of more than 8 bytes.^M
(gdb) FAIL: gdb.rust/simple.exp: print str_some
print str_none^M
That operation is not available on integers of more than 8 bytes.^M
(gdb) FAIL: gdb.rust/simple.exp: print str_none
  ...
(gdb) print custom_some^M
That operation is not available on integers of more than 8 bytes.^M
(gdb) FAIL: gdb.rust/simple.exp: print custom_some
print custom_none^M
That operation is not available on integers of more than 8 bytes.^M
(gdb) FAIL: gdb.rust/simple.exp: print custom_none
  ...
(gdb) python print(gdb.lookup_type('simple::MoreComplicated').dynamic)^M
False^M
(gdb) FAIL: gdb.rust/simple.exp: python
print(gdb.lookup_type('simple::MoreComplicated').dynamic)

...

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (18 preceding siblings ...)
  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
                   ` (15 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-08-12 21:31 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #18 from Tom Tromey <tromey at sourceware dot org> ---
(In reply to Tom de Vries from comment #17)

> (gdb) print str_some^M
> That operation is not available on integers of more than 8 bytes.^M
> (gdb) FAIL: gdb.rust/simple.exp: print str_some
> print str_none^M
> That operation is not available on integers of more than 8 bytes.^M
> (gdb) FAIL: gdb.rust/simple.exp: print str_none
>   ...
> (gdb) print custom_some^M
> That operation is not available on integers of more than 8 bytes.^M
> (gdb) FAIL: gdb.rust/simple.exp: print custom_some
> print custom_none^M
> That operation is not available on integers of more than 8 bytes.^M
> (gdb) FAIL: gdb.rust/simple.exp: print custom_none

I checked out commit 9852ceef -- which came before the variant part rewrite.
This version didn't work for these tests either:

(gdb) print str_some
$1 = <error reading variable>
(gdb) print str_none
$2 = <error reading variable>
(gdb) print custom_some 
$3 = <error reading variable>
(gdb) print custom_none
$4 = <error reading variable>

Then I checked out the version before a1520ad8fc (see comment #6).
However, this one crashes trying to load the executable, which
maybe is why that patch exists?  (I don't remember the context any more.)

Do you know of a version that passes these tests with this executable
or rust compiler version?

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (19 preceding siblings ...)
  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
                   ` (14 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-08-13 11:26 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #19 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom Tromey from comment #18)
> Then I checked out the version before a1520ad8fc (see comment #6).
> However, this one crashes trying to load the executable, which
> maybe is why that patch exists?  (I don't remember the context any more.)
> 

I've checked out a1520ad8fc^ and built it.

I'm observing the same as you, that is:
...
UNTESTED: gdb.rust/union.exp: could not run to breakpoint
UNTESTED: gdb.rust/modules.exp: could not run to breakpoint
UNTESTED: gdb.rust/simple.exp: could not run to breakpoint
UNTESTED: gdb.rust/traits.exp: could not read
/home/vries/gdb_versions/devel/build/gdb/testsuite/outputs/gdb.rust/traits/traits
with readelf
UNTESTED: gdb.rust/rust-style.exp: could not run to breakpoint
UNTESTED: gdb.rust/methods.exp: could not run to breakpoint
...

Which means that my assessment in comment 6 was wrong: this is not a regression
starting at that commit.

> Do you know of a version that passes these tests with this executable
> or rust compiler version?

I've tried the you mentioned, commit 9852ceef, and get:
...
Running target unix
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/union.exp ...
PASS: gdb.rust/union.exp: print u
PASS: gdb.rust/union.exp: ptype/o Union
PASS: gdb.rust/union.exp: print u2
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/modules.exp
...
PASS: gdb.rust/modules.exp: call f3()
PASS: gdb.rust/modules.exp: call self::f2()
PASS: gdb.rust/modules.exp: call self::super::f2()
PASS: gdb.rust/modules.exp: call super::f2()
PASS: gdb.rust/modules.exp: call self::super::super::f2()
PASS: gdb.rust/modules.exp: call super::super::f2()
PASS: gdb.rust/modules.exp: call ::f2()
PASS: gdb.rust/modules.exp: call extern modules::mod1::f2()
PASS: gdb.rust/modules.exp: call super::super::super::f2()
PASS: gdb.rust/modules.exp: ptype ::Generic::<::Generic<::Type> >
PASS: gdb.rust/modules.exp: ptype ::Generic::<::Generic<extern modules::Type> >
PASS: gdb.rust/modules.exp: ptype ::Generic::<::Generic<::mod1::Type>>
PASS: gdb.rust/modules.exp: ptype ::Generic::<::Generic<super::Type>>
PASS: gdb.rust/modules.exp: ptype ::Generic::<::Generic<self::Type>>
PASS: gdb.rust/modules.exp: setting breakpoint at
modules::mod1::inner::innest::f2
PASS: gdb.rust/modules.exp: setting breakpoint at *::mod1::inner::innest::f2
PASS: gdb.rust/modules.exp: setting breakpoint at modules::mod1::inner::f2
PASS: gdb.rust/modules.exp: setting breakpoint at *::mod1::inner::f2
PASS: gdb.rust/modules.exp: setting breakpoint at modules::mod1::f2
PASS: gdb.rust/modules.exp: setting breakpoint at *::mod1::f2
PASS: gdb.rust/modules.exp: setting breakpoint at modules::f2
PASS: gdb.rust/modules.exp: setting breakpoint at *::f2
PASS: gdb.rust/modules.exp: print ::TWENTY_THREE
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/unsized.exp
...
PASS: gdb.rust/unsized.exp: ptype *us
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/simple.exp
...
PASS: gdb.rust/simple.exp: print a
PASS: gdb.rust/simple.exp: ptype a
PASS: gdb.rust/simple.exp: print sizeof(a)
PASS: gdb.rust/simple.exp: print b
PASS: gdb.rust/simple.exp: ptype b
PASS: gdb.rust/simple.exp: print *(&b as *const [i32; 0])
PASS: gdb.rust/simple.exp: print *(&b as *const [i32; 0_0])
PASS: gdb.rust/simple.exp: print c
PASS: gdb.rust/simple.exp: ptype c
PASS: gdb.rust/simple.exp: print sizeof(c)
PASS: gdb.rust/simple.exp: print c = 87
PASS: gdb.rust/simple.exp: print c
PASS: gdb.rust/simple.exp: print c += 3
PASS: gdb.rust/simple.exp: print c
PASS: gdb.rust/simple.exp: print c -= 90
PASS: gdb.rust/simple.exp: print c
PASS: gdb.rust/simple.exp: print *&c
PASS: gdb.rust/simple.exp: print *(&c as &i32)
PASS: gdb.rust/simple.exp: print *(&c as *const i32)
PASS: gdb.rust/simple.exp: print *(&c as *mut i32)
PASS: gdb.rust/simple.exp: ptype &c as *mut i32
PASS: gdb.rust/simple.exp: print/c f[0]
PASS: gdb.rust/simple.exp: print j
PASS: gdb.rust/simple.exp: ptype j
PASS: gdb.rust/simple.exp: print j2
PASS: gdb.rust/simple.exp: ptype j2
PASS: gdb.rust/simple.exp: print simple::Unit
PASS: gdb.rust/simple.exp: print simple::Unit{}
PASS: gdb.rust/simple.exp: print f
PASS: gdb.rust/simple.exp: print fslice
PASS: gdb.rust/simple.exp: print &f[3..]
PASS: gdb.rust/simple.exp: print g
PASS: gdb.rust/simple.exp: ptype g
PASS: gdb.rust/simple.exp: print v
PASS: gdb.rust/simple.exp: ptype v
PASS: gdb.rust/simple.exp: print w
PASS: gdb.rust/simple.exp: ptype w
PASS: gdb.rust/simple.exp: print w[2]
PASS: gdb.rust/simple.exp: print w[2] @ 2
PASS: gdb.rust/simple.exp: print w_ptr[2]
PASS: gdb.rust/simple.exp: print fromslice
PASS: gdb.rust/simple.exp: print slice[0]
PASS: gdb.rust/simple.exp: print slice as &[i32][0]
PASS: gdb.rust/simple.exp: ptype slice
PASS: gdb.rust/simple.exp: ptype &slice[..]
PASS: gdb.rust/simple.exp: ptype &b[..]
PASS: gdb.rust/simple.exp: print x
PASS: gdb.rust/simple.exp: ptype x
PASS: gdb.rust/simple.exp: print x as (i32,f64)
PASS: gdb.rust/simple.exp: print y
PASS: gdb.rust/simple.exp: ptype y
PASS: gdb.rust/simple.exp: print y.field2
PASS: gdb.rust/simple.exp: print z
PASS: gdb.rust/simple.exp: ptype z
PASS: gdb.rust/simple.exp: print z.1
PASS: gdb.rust/simple.exp: print univariant
PASS: gdb.rust/simple.exp: print univariant.a
PASS: gdb.rust/simple.exp: print univariant_anon
PASS: gdb.rust/simple.exp: print univariant_anon.0
PASS: gdb.rust/simple.exp: print univariant_anon.sss
PASS: gdb.rust/simple.exp: ptype simple::Univariant
PASS: gdb.rust/simple.exp: ptype simple::UnivariantAnon
PASS: gdb.rust/simple.exp: ptype simple::ByeBob
PASS: gdb.rust/simple.exp: print simple::ByeBob(0xff, 5)
PASS: gdb.rust/simple.exp: print simple::ByeBob{field1: 0xff, field2:5}
PASS: gdb.rust/simple.exp: print simple::HiBob(0xff, 5)
PASS: gdb.rust/simple.exp: print sizeof(simple::HiBob)
PASS: gdb.rust/simple.exp: print simple::HiBob + 5
PASS: gdb.rust/simple.exp: print nosuchsymbol
PASS: gdb.rust/simple.exp: print simple::HiBob{field1, field2}
PASS: gdb.rust/simple.exp: print simple::HiBob{field1: 99, .. y}
PASS: gdb.rust/simple.exp: print e
PASS: gdb.rust/simple.exp: print e2
PASS: gdb.rust/simple.exp: print sizeof(e)
PASS: gdb.rust/simple.exp: ptype e
PASS: gdb.rust/simple.exp: print e.0
PASS: gdb.rust/simple.exp: print e.1
PASS: gdb.rust/simple.exp: print e.foo
PASS: gdb.rust/simple.exp: print e2.variant
PASS: gdb.rust/simple.exp: print e2.notexist
PASS: gdb.rust/simple.exp: print e2.0
XFAIL: gdb.rust/simple.exp: print k
PASS: gdb.rust/simple.exp: print l
PASS: gdb.rust/simple.exp: print *l.1
PASS: gdb.rust/simple.exp: print diff2(3, 7)
PASS: gdb.rust/simple.exp: print self::diff2(8, 9)
PASS: gdb.rust/simple.exp: print ::diff2(23, -23)
PASS: gdb.rust/simple.exp: ptype diff2
PASS: gdb.rust/simple.exp: ptype empty
PASS: gdb.rust/simple.exp: print (diff2 as fn(i32, i32) -> i32)(19, -2)
PASS: gdb.rust/simple.exp: print "hello rust"
PASS: gdb.rust/simple.exp: print "hello
PASS: gdb.rust/simple.exp: print r##"hello " rust"##
PASS: gdb.rust/simple.exp: print r"hello
PASS: gdb.rust/simple.exp: print r###"###hello"
PASS: gdb.rust/simple.exp: print r###"###hello"##
PASS: gdb.rust/simple.exp: print r###"hello###
PASS: gdb.rust/simple.exp: print 0..5
PASS: gdb.rust/simple.exp: print 0..=5
PASS: gdb.rust/simple.exp: print ..5
PASS: gdb.rust/simple.exp: print ..=5
PASS: gdb.rust/simple.exp: print 5..
PASS: gdb.rust/simple.exp: print ..
XFAIL: gdb.rust/simple.exp: print str_some
XFAIL: gdb.rust/simple.exp: print str_none
PASS: gdb.rust/simple.exp: print int_some
PASS: gdb.rust/simple.exp: print int_none
PASS: gdb.rust/simple.exp: print box_some
PASS: gdb.rust/simple.exp: print box_none
XFAIL: gdb.rust/simple.exp: print custom_some
XFAIL: gdb.rust/simple.exp: print custom_none
PASS: gdb.rust/simple.exp: print st
PASS: gdb.rust/simple.exp: print slice
PASS: gdb.rust/simple.exp: print &w[2..3]
PASS: gdb.rust/simple.exp: print slice
PASS: gdb.rust/simple.exp: print &w[2..=2]
PASS: gdb.rust/simple.exp: print slice2
PASS: gdb.rust/simple.exp: print &slice[0..1]
PASS: gdb.rust/simple.exp: print slice2
PASS: gdb.rust/simple.exp: print &slice[0..=0]
PASS: gdb.rust/simple.exp: print all1
PASS: gdb.rust/simple.exp: print &w[..]
PASS: gdb.rust/simple.exp: print all2
PASS: gdb.rust/simple.exp: print &slice[..]
PASS: gdb.rust/simple.exp: print from1
PASS: gdb.rust/simple.exp: print &w[1..]
PASS: gdb.rust/simple.exp: print from2
PASS: gdb.rust/simple.exp: print &slice[1..]
PASS: gdb.rust/simple.exp: print to1
PASS: gdb.rust/simple.exp: print &w[..3]
PASS: gdb.rust/simple.exp: print to1
PASS: gdb.rust/simple.exp: print &w[..=2]
PASS: gdb.rust/simple.exp: print to2
PASS: gdb.rust/simple.exp: print &slice[..1]
PASS: gdb.rust/simple.exp: print to2
PASS: gdb.rust/simple.exp: print &slice[..=0]
PASS: gdb.rust/simple.exp: print w[2..3]
PASS: gdb.rust/simple.exp: complete print y.f
PASS: gdb.rust/simple.exp: complete print y.
PASS: gdb.rust/simple.exp: print (1,2,3)
PASS: gdb.rust/simple.exp: print (1,)
PASS: gdb.rust/simple.exp: print (1)
PASS: gdb.rust/simple.exp: print 23..97.0
PASS: gdb.rust/simple.exp: print (*parametrized.next.val)
PASS: gdb.rust/simple.exp: print parametrized.next.val
PASS: gdb.rust/simple.exp: print parametrized
PASS: gdb.rust/simple.exp: ptype/o SimpleLayout
PASS: gdb.rust/simple.exp: print nonzero_offset
PASS: gdb.rust/simple.exp: print empty_enum_value
PASS: gdb.rust/simple.exp: ptype empty_enum_value
PASS: gdb.rust/simple.exp: print empty_enum_value.0
PASS: gdb.rust/simple.exp: print empty_enum_value.something
PASS: gdb.rust/simple.exp: python print(gdb.lookup_type('simple::HiBob'))
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/watch.exp ...
PASS: gdb.rust/watch.exp: watch -location y
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/traits.exp
...
UNTESTED: gdb.rust/traits.exp: could not read
/home/vries/gdb_versions/devel/build/gdb/testsui
te/outputs/gdb.rust/traits/traits with readelf
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/expr.exp ...
PASS: gdb.rust/expr.exp: set var $something = 27
PASS: gdb.rust/expr.exp: set language rust
PASS: gdb.rust/expr.exp: set language to "rust"
PASS: gdb.rust/expr.exp: print 9__97
PASS: gdb.rust/expr.exp: print -5
PASS: gdb.rust/expr.exp: print +5
PASS: gdb.rust/expr.exp: print +-+-5
PASS: gdb.rust/expr.exp: print 3_2i32
PASS: gdb.rust/expr.exp: print 32i64
PASS: gdb.rust/expr.exp: print 8u8
PASS: gdb.rust/expr.exp: print 0x1f
PASS: gdb.rust/expr.exp: print 0o07
PASS: gdb.rust/expr.exp: print 0o70
PASS: gdb.rust/expr.exp: print 0b1_111
PASS: gdb.rust/expr.exp: print 32usize
PASS: gdb.rust/expr.exp: print 0x_4
PASS: gdb.rust/expr.exp: print 'z'
PASS: gdb.rust/expr.exp: print '\t'
PASS: gdb.rust/expr.exp: print '\n'
PASS: gdb.rust/expr.exp: print '\r'
PASS: gdb.rust/expr.exp: print '\\'
PASS: gdb.rust/expr.exp: print '\0'
PASS: gdb.rust/expr.exp: print '\''
PASS: gdb.rust/expr.exp: print '\"'
PASS: gdb.rust/expr.exp: print '\xff'
PASS: gdb.rust/expr.exp: print '\xFF'
PASS: gdb.rust/expr.exp: print '\u{F0eF}'
PASS: gdb.rust/expr.exp: print b'z'
PASS: gdb.rust/expr.exp: print b'\xfe'
PASS: gdb.rust/expr.exp: print b'\t'
PASS: gdb.rust/expr.exp: print b'\n'
PASS: gdb.rust/expr.exp: print b'\r'
PASS: gdb.rust/expr.exp: print b'\\'
PASS: gdb.rust/expr.exp: print b'\0'
PASS: gdb.rust/expr.exp: print b'\''
PASS: gdb.rust/expr.exp: print b'\"'
PASS: gdb.rust/expr.exp: print b'\xff'
PASS: gdb.rust/expr.exp: print 23.5
PASS: gdb.rust/expr.exp: print 23.5e1
PASS: gdb.rust/expr.exp: print 2e4
PASS: gdb.rust/expr.exp: print 2_E+4_f64
PASS: gdb.rust/expr.exp: print 5e-1
PASS: gdb.rust/expr.exp: print 5e-1f32
PASS: gdb.rust/expr.exp: print false
PASS: gdb.rust/expr.exp: print true
PASS: gdb.rust/expr.exp: print 1+2
PASS: gdb.rust/expr.exp: print 1i32 + 2i32
PASS: gdb.rust/expr.exp: print 2.0 - 1.0
PASS: gdb.rust/expr.exp: print !false
PASS: gdb.rust/expr.exp: print !true
PASS: gdb.rust/expr.exp: print !0u8
PASS: gdb.rust/expr.exp: print 7 * 7
PASS: gdb.rust/expr.exp: print 7usize * 7usize
PASS: gdb.rust/expr.exp: print 42 / 7
PASS: gdb.rust/expr.exp: print 42 % 7
PASS: gdb.rust/expr.exp: print 1.0 / 2.0
PASS: gdb.rust/expr.exp: print 1 < 2
PASS: gdb.rust/expr.exp: print !(1 < 2)
PASS: gdb.rust/expr.exp: print 3 + 4 * 7
PASS: gdb.rust/expr.exp: print 1 > 2
PASS: gdb.rust/expr.exp: print 1 | 2
PASS: gdb.rust/expr.exp: print 1 & 2
PASS: gdb.rust/expr.exp: print 3 & 2
PASS: gdb.rust/expr.exp: print 3 ^ 2
PASS: gdb.rust/expr.exp: print (1 < 0) || true
PASS: gdb.rust/expr.exp: print (1 > 0) && false
PASS: gdb.rust/expr.exp: print 'z' == 'z'
PASS: gdb.rust/expr.exp: print '\u{1016f}' != 'q'
PASS: gdb.rust/expr.exp: print 32 <= 32
PASS: gdb.rust/expr.exp: print 32 >= 32
PASS: gdb.rust/expr.exp: print 1 << 5
PASS: gdb.rust/expr.exp: print 32usize >> 5
PASS: gdb.rust/expr.exp: ptype 32i32 as f64
PASS: gdb.rust/expr.exp: ptype 0xf9f9f9f90000
PASS: gdb.rust/expr.exp: print ()
PASS: gdb.rust/expr.exp: print [1,2,3,4]
PASS: gdb.rust/expr.exp: ptype [1,2,3,4]
PASS: gdb.rust/expr.exp: print [mut 1,2,3,4]
PASS: gdb.rust/expr.exp: print b"hi rust"
PASS: gdb.rust/expr.exp: print b"\xddhi bob"
PASS: gdb.rust/expr.exp: print b"has\0nul"
PASS: gdb.rust/expr.exp: print br##"hi"##
PASS: gdb.rust/expr.exp: print br##"hi
PASS: gdb.rust/expr.exp: print br##"hi"
PASS: gdb.rust/expr.exp: print br##"hi"#
PASS: gdb.rust/expr.exp: print $something
PASS: gdb.rust/expr.exp: print $_isvoid($nosuchvariable)
PASS: gdb.rust/expr.exp: print $_isvoid($something)
PASS: gdb.rust/expr.exp: print [23usize; 4]
PASS: gdb.rust/expr.exp: ptype [23usize; 4]
PASS: gdb.rust/expr.exp: print [mut 23usize; 4]
PASS: gdb.rust/expr.exp: print 0x0 as *mut ()
PASS: gdb.rust/expr.exp: print 0x0 as fn(i64) -> ()
PASS: gdb.rust/expr.exp: print r#
PASS: gdb.rust/expr.exp: printf "%d %d\n", 23+1, 23-1
Running
/home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/rust-style.exp ...
PASS: gdb.rust/rust-style.exp: print v
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/methods.exp
...
PASS: gdb.rust/methods.exp: print x
PASS: gdb.rust/methods.exp: print methods::HasMethods{value: 73}
PASS: gdb.rust/methods.exp: print methods::HasMethods{..x}
PASS: gdb.rust/methods.exp: print methods::HasMethods{value:19, ..x}
PASS: gdb.rust/methods.exp: print x.take()
PASS: gdb.rust/methods.exp: print *(x.incr())
PASS: gdb.rust/methods.exp: print *((&mut x).incr())
PASS: gdb.rust/methods.exp: print a.value()
PASS: gdb.rust/methods.exp: print (&mut a).value()
PASS: gdb.rust/methods.exp: print b.value()
PASS: gdb.rust/methods.exp: print c.value()
PASS: gdb.rust/methods.exp: continue to breakpoint: second breakpoint
PASS: gdb.rust/methods.exp: print *self
PASS: gdb.rust/methods.exp: info functions HasMethods::new
Running /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/generics.exp
...
FAIL: gdb.rust/generics.exp: print identity::<u32>(23u32)
FAIL: gdb.rust/generics.exp: ptype identity::<u32>(23u32)
FAIL: gdb.rust/generics.exp: print identity::<f64>(23)
FAIL: gdb.rust/generics.exp: ptype identity::<f64>(23)
PASS: gdb.rust/generics.exp: print e
PASS: gdb.rust/generics.exp: print generics::Hold::<i32> (7)
PASS: gdb.rust/generics.exp: print Hold::<i32> (7)
FAIL: gdb.rust/generics.exp: print identity::< Hold<i32> >(e)
FAIL: gdb.rust/generics.exp: print identity::<generics::Hold<i32> >(e)
FAIL: gdb.rust/generics.exp: print identity::<Hold<i32>>(e)

                === gdb Summary ===

# of expected passes            289
# of unexpected failures        7
# of expected failures          5
# of untested testcases         1
...

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (20 preceding siblings ...)
  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
                   ` (13 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-08-13 12:43 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #20 from Tom Tromey <tromey at sourceware dot org> ---
Ok, I see.  The test accepts the bug:

set xfail_pattern " = <error reading variable>"
gdb_test_multiple "print str_some" "" {
    -re "\[\r\n\]*(?:$pass_pattern)\[\r\n\]+$gdb_prompt $" {
        pass $gdb_test_name
    }
    -re "\[\r\n\]*(?:$xfail_pattern)\[\r\n\]+$gdb_prompt $" {
        xfail $gdb_test_name
    }
}


I suppose we could just update the xfail pattern then.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (21 preceding siblings ...)
  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
                   ` (12 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-08-13 12:46 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #21 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom Tromey from comment #20)
> Ok, I see.  The test accepts the bug:
> 
> set xfail_pattern " = <error reading variable>"
> gdb_test_multiple "print str_some" "" {
>     -re "\[\r\n\]*(?:$pass_pattern)\[\r\n\]+$gdb_prompt $" {
> 	pass $gdb_test_name
>     }
>     -re "\[\r\n\]*(?:$xfail_pattern)\[\r\n\]+$gdb_prompt $" {
> 	xfail $gdb_test_name
>     }
> }
> 
> 
> I suppose we could just update the xfail pattern then.

Fine by me.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (22 preceding siblings ...)
  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
                   ` (11 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-08-13 14:13 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #22 from Tom Tromey <tromey at sourceware dot org> ---
Please try this.  I can't test it myself.

diff --git a/gdb/testsuite/gdb.rust/simple.exp
b/gdb/testsuite/gdb.rust/simple.exp
index f0cad4e7634..f057d2a071a 100644
--- a/gdb/testsuite/gdb.rust/simple.exp
+++ b/gdb/testsuite/gdb.rust/simple.exp
@@ -239,7 +239,8 @@ gdb_test "print .." " = .*::ops::RangeFull"

 set pass_pattern \
     " =
core::option::Option<\[a-z\]+::string::String>::Some\\(\[a-z\]+::string::String
.*"
-set xfail_pattern " = <error reading variable>"
+set xfail_pattern \
+    " = (<error reading variable>|That operation is not available on .*)"
 gdb_test_multiple "print str_some" "" {
     -re "\[\r\n\]*(?:$pass_pattern)\[\r\n\]+$gdb_prompt $" {
        pass $gdb_test_name


Also available on my github, branch submit/pr-26197-xfails

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (23 preceding siblings ...)
  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
                   ` (10 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-08-15  6:10 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #23 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom Tromey from comment #22)
> Please try this.  I can't test it myself.
> 
> diff --git a/gdb/testsuite/gdb.rust/simple.exp
> b/gdb/testsuite/gdb.rust/simple.exp
> index f0cad4e7634..f057d2a071a 100644
> --- a/gdb/testsuite/gdb.rust/simple.exp
> +++ b/gdb/testsuite/gdb.rust/simple.exp
> @@ -239,7 +239,8 @@ gdb_test "print .." " = .*::ops::RangeFull"
>  
>  set pass_pattern \
>      " =
> core::option::Option<\[a-z\]+::string::String>::Some\\(\[a-z\]+::string::
> String .*"
> -set xfail_pattern " = <error reading variable>"
> +set xfail_pattern \
> +    " = (<error reading variable>|That operation is not available on .*)"
>  gdb_test_multiple "print str_some" "" {
>      -re "\[\r\n\]*(?:$pass_pattern)\[\r\n\]+$gdb_prompt $" {
>         pass $gdb_test_name
> 
> 
> Also available on my github, branch submit/pr-26197-xfails

With this additional change:
...
diff --git a/gdb/testsuite/gdb.rust/simple.exp
b/gdb/testsuite/gdb.rust/simple.exp
index f057d2a071..b32eaf1e4d 100644
--- a/gdb/testsuite/gdb.rust/simple.exp
+++ b/gdb/testsuite/gdb.rust/simple.exp
@@ -240,7 +240,7 @@ gdb_test "print .." " = .*::ops::RangeFull"
 set pass_pattern \
     " =
core::option::Option<\[a-z\]+::string::String>::Some\\(\[a-z\]+::string::String
.*"
 set xfail_pattern \
-    " = (<error reading variable>|That operation is not available on .*)"
+    "( = <error reading variable>|That operation is not available on .*)"
 gdb_test_multiple "print str_some" "" {
     -re "\[\r\n\]*(?:$pass_pattern)\[\r\n\]+$gdb_prompt $" {
        pass $gdb_test_name
...
we have:
...
FAIL: gdb.rust/simple.exp: python
print(gdb.lookup_type('simple::MoreComplicated').dynamic)

                === gdb Summary ===

# of expected passes            301
# of unexpected failures        1
# of expected failures          5
# of untested testcases         1
# of paths in test names        1
...

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (24 preceding siblings ...)
  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
                   ` (9 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-08-17 16:49 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #24 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=326afb722951cacc6131e2d6d1511986748ca017

commit 326afb722951cacc6131e2d6d1511986748ca017
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Aug 17 10:45:49 2020 -0600

    Update xfail pattern in gdb.rust/simple.exp

    In PR rust/26197, Tom de Vries notes that the variant part rewrite
    caused some regressions for the Rust compiler he has.  This compiler
    is unusual in that it combines a relatively recent rustc with a
    relatively old LLVM -- so variant parts are not emitted using DWARF.

    Most of the bugs in that PR were already fixed by earlier patches, but
    some lingered.  After some research we found that some of these never
    did work -- which is consistent with the investigations we did into
    the debug info -- but instead were xfail'd.  This patch updates the
    xfails to cope with the new output.  (After this, just one failure
    remains.)

    Tom de Vries tested this using his rustc and suggested a fix that
    appears in this version.

    gdb/testsuite/ChangeLog
    2020-08-17  Tom de Vries  <tdevries@suse.de>
                Tom Tromey  <tromey@adacore.com>

            PR rust/26197:
            * gdb.rust/simple.exp (xfail_pattern): Update for new failure.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (25 preceding siblings ...)
  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
                   ` (8 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-08-17 17:04 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #25 from Tom Tromey <tromey at sourceware dot org> ---
Can you try this for the last failure?


diff --git a/gdb/testsuite/gdb.rust/simple.exp
b/gdb/testsuite/gdb.rust/simple.exp
index b32eaf1e4dc..91363c0393e 100644
--- a/gdb/testsuite/gdb.rust/simple.exp
+++ b/gdb/testsuite/gdb.rust/simple.exp
@@ -375,5 +375,12 @@ gdb_test "python print(e.type.fields()\[0\].artificial)"
"True"
 gdb_test "python print(e.type.fields()\[1\].name)" "Two"

 gdb_test "python print(e.type.dynamic)" "False"
-gdb_test "python print(gdb.lookup_type('simple::MoreComplicated').dynamic)" \
-    "True"
+gdb_test_multiple \
+    "python print(gdb.lookup_type('simple::MoreComplicated').dynamic)" "" {
+       -re "\[\r\n\]*True\[\r\n\]+$gdb_prompt $" {
+           pass $gdb_test_name
+       }
+       -re "\[\r\n\]*False\[\r\n\]+$gdb_prompt $" {
+           xfail $gdb_test_name
+       }
+    }

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (26 preceding siblings ...)
  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
                   ` (7 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-08-17 17:09 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #26 from Tom Tromey <tromey at sourceware dot org> ---
Though TBH I don't know what value this test provides if it
xfails the only other result.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (27 preceding siblings ...)
  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
                   ` (6 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-08-18  9:02 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #27 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom Tromey from comment #25)
> Can you try this for the last failure?
> 
> 
> diff --git a/gdb/testsuite/gdb.rust/simple.exp
> b/gdb/testsuite/gdb.rust/simple.exp
> index b32eaf1e4dc..91363c0393e 100644
> --- a/gdb/testsuite/gdb.rust/simple.exp
> +++ b/gdb/testsuite/gdb.rust/simple.exp
> @@ -375,5 +375,12 @@ gdb_test "python
> print(e.type.fields()\[0\].artificial)" "True"
>  gdb_test "python print(e.type.fields()\[1\].name)" "Two"
>  
>  gdb_test "python print(e.type.dynamic)" "False"
> -gdb_test "python print(gdb.lookup_type('simple::MoreComplicated').dynamic)"
> \
> -    "True"
> +gdb_test_multiple \
> +    "python print(gdb.lookup_type('simple::MoreComplicated').dynamic)" "" {
> +	-re "\[\r\n\]*True\[\r\n\]+$gdb_prompt $" {
> +	    pass $gdb_test_name
> +	}
> +	-re "\[\r\n\]*False\[\r\n\]+$gdb_prompt $" {
> +	    xfail $gdb_test_name
> +	}
> +    }

(gdb) python print(gdb.lookup_type('simple::MoreComplicated').dynamic)^M
False^M
(gdb) XFAIL: gdb.rust/simple.exp: python
print(gdb.lookup_type('simple::MoreComplicated').dynamic)
testcase /home/vries/gdb_versions/devel/src/gdb/testsuite/gdb.rust/simple.exp
completed in 2 seconds

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (28 preceding siblings ...)
  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
                   ` (5 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: vries at gcc dot gnu.org @ 2020-08-18  9:34 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #28 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom Tromey from comment #26)
> Though TBH I don't know what value this test provides if it
> xfails the only other result.

I suppose we could test rustc version (using --version --verbose), getting the
rustc and paired llvm version, and xfail or not based on that.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (29 preceding siblings ...)
  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
                   ` (4 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-09-08 16:42 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #29 from Tom Tromey <tromey at sourceware dot org> ---
Sorry about the delay.  Yeah, that would work.
Maybe just checking the LLVM version is enough.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (30 preceding siblings ...)
  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
                   ` (3 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-09-10 18:39 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #30 from Tom Tromey <tromey at sourceware dot org> ---
I re-debugged this and the patch I'm about to submit has a slightly
better description of what's wrong -- namely that the rust compiler
emits two types with the same name, and gdb picks the wrong one.
This is fixed by using a later version of LLVM.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (31 preceding siblings ...)
  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
                   ` (2 subsequent siblings)
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-09-10 18:43 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #31 from Tom Tromey <tromey at sourceware dot org> ---
https://sourceware.org/pipermail/gdb-patches/2020-September/171768.html

(I wish submissions to the list automatically showed up here...)

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (32 preceding siblings ...)
  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
  35 siblings, 0 replies; 37+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-09-15 15:27 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #32 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=08cc37dd042338209c8e2aa5db04aef2ecb5c62b

commit 08cc37dd042338209c8e2aa5db04aef2ecb5c62b
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Sep 15 09:27:01 2020 -0600

    Avoid running one Rust test against older LLVM

    LLVM 8.0 introduced some changes to let the Rust compiler emit DWARF
    variant parts.  Before this change, the compiler would emit two types
    with the same name, and unfortunately gdb happens to pick the wrong
    one.  So, this patch disables the test when using an older version of
    LLVM.

    gdb/testsuite/ChangeLog
    2020-09-15  Tom Tromey  <tromey@adacore.com>

            PR rust/26197:
            * lib/rust-support.exp (rust_llvm_version): New proc.
            * gdb.rust/simple.exp: Check rust_llvm_version.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (33 preceding siblings ...)
  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
  35 siblings, 0 replies; 37+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-09-15 15:48 UTC (permalink / raw)
  To: gdb-prs

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

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

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

commit efb04be6ae6a247643a3e6d8dd9bbc0b157d7e3b
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Sep 15 09:27:01 2020 -0600

    Avoid running one Rust test against older LLVM

    LLVM 8.0 introduced some changes to let the Rust compiler emit DWARF
    variant parts.  Before this change, the compiler would emit two types
    with the same name, and unfortunately gdb happens to pick the wrong
    one.  So, this patch disables the test when using an older version of
    LLVM.

    2020-09-15  Tom Tromey  <tromey@adacore.com>

            PR rust/26197:
            * lib/rust-support.exp (rust_llvm_version): New proc.
            * gdb.rust/simple.exp: Check rust_llvm_version.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

* [Bug rust/26197] rust FAILs with rustc 1.36.0 and llvm 7
  2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 vries at gcc dot gnu.org
                   ` (34 preceding siblings ...)
  2020-09-15 15:48 ` cvs-commit at gcc dot gnu.org
@ 2020-09-15 15:48 ` tromey at sourceware dot org
  35 siblings, 0 replies; 37+ messages in thread
From: tromey at sourceware dot org @ 2020-09-15 15:48 UTC (permalink / raw)
  To: gdb-prs

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

Tom Tromey <tromey at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #34 from Tom Tromey <tromey at sourceware dot org> ---
Fixed.

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2020-09-15 15:48 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-02 15:01 [Bug rust/26197] New: rust FAILs with rustc 1.36.0 and llvm 7 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
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

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).