Commit Graph

24 Commits

Author SHA1 Message Date
ortem 47c26e69a9 Implement new gdb/lldb pretty-printers
Replace old GDB and LLDB pretty-printers with new ones
which were originally written for IntelliJ Rust.
New LLDB pretty-printers support synthetic children.
New GDB/LLDB pretty-printers support all Rust types
supported by old pretty-printers, and also support:
Rc, Arc, Cell, Ref, RefCell, RefMut, HashMap, HashSet.
2020-06-09 16:13:11 +03:00
Mark Rousskov 2a663555dd Remove licenses 2018-12-25 21:08:33 -07:00
Tom Tromey 30178b422a Disable some pretty-printers when gdb is rust-enabled
A rust-enabled gdb already knows how to display string slices,
structs, tuples, and enums (and after #54004, the pretty-printers
can't handle enums at all).  This patch disables these pretty-printers
when gdb is rust-enabled.

The "gdb-pretty-struct-and-enums-pre-gdb-7-7.rs" test is renamed,
because it does not seem to depend on any behavior of that version of
gdb, and because gdb 7.7 is 4 years old now.
2018-11-19 08:08:46 -07:00
Alex Crichton 3430532a8e Revert "debuginfo: Bring back some GDB pretty printing autotests that are not actually broken."
This reverts commit 354cf4b56b.
2015-08-05 09:20:28 -07:00
Michael Woerister 354cf4b56b debuginfo: Bring back some GDB pretty printing autotests that are not actually broken. 2015-08-03 21:47:53 +02:00
Steve Klabnik bba934f19a ignore-test cleanup
Most of these are old, but some specific messages for specific tests:

* trait-contravariant-self.rs: failed due to a soundess hole:
  05e3248a79

* process-detatch: 15966c3c1f
  says "this test is being ignored until signals are implemented" That's
  not happening for a long time, and when it is, we'll write tests for
  it.

* deep-vector{,2}.rs: "too big for our poor macro infrastructure", and has
  been ignored over a year.

* borrowck-nested-calls.rs's FIXME #6268 was closed in favor of
  rust-lang/rfcs#811

* issue-15167.rs works properly now
* issue-9737.rs works properly now
* match-var-hygiene.rs works properly now

Addresses a chunk of #3965
2015-06-12 14:16:16 -04:00
Brian Anderson b26a48868c test: Ignore gdb-pretty-struct-and-enums.rs
Broken on nightly linux distcheck.
2015-06-07 11:10:56 -07:00
Tamir Duberstein 54de911f35 #10381: Warnings 2015-04-28 17:51:43 -07:00
Alex Crichton 43bfaa4a33 Mass rename uint/int to usize/isize
Now that support has been removed, all lingering use cases are renamed.
2015-03-26 12:10:22 -07:00
Niko Matsakis 362d713026 Fix remaining bench/debuginfo tests (and a few stragglers) 2015-02-18 09:11:02 -05:00
Will 42f5ac568a Fix tests that fail on FreeBSD 2015-02-15 17:18:55 +09:00
Kelvin Ly d33857208f Fixed tests 2015-01-05 15:28:19 -05:00
Kelvin Ly 87eebd17cd Fixed tests 2015-01-05 14:58:02 -05:00
Kelvin Ly 7e42338dc5 Added two tests for pretty printing optimized enums 2015-01-05 13:49:33 -05:00
Michael Woerister 91a0e18866 debuginfo: Add a rust-gdb shell script that will start GDB with Rust pretty printers enabled. 2014-12-30 17:26:13 +01:00
Luqman Aden 89d0995373 gdb: Fix pretty printer for nullable-opt enums with fat pointers. 2014-12-02 18:28:43 -05:00
Simon Wollwage f950e3c495 removed struct_variant feature from tests 2014-11-20 00:56:50 +01:00
Steven Fackler 3dcd215740 Switch to purely namespaced enums
This breaks code that referred to variant names in the same namespace as
their enum. Reexport the variants in the old location or alter code to
refer to the new locations:

```
pub enum Foo {
    A,
    B
}

fn main() {
    let a = A;
}
```
=>
```
pub use self::Foo::{A, B};

pub enum Foo {
    A,
    B
}

fn main() {
    let a = A;
}
```
or
```
pub enum Foo {
    A,
    B
}

fn main() {
    let a = Foo::A;
}
```

[breaking-change]
2014-11-17 07:35:51 -08:00
Michael Woerister 54a5a2b365 debuginfo: Make GDB tests use line breakpoints like done in LLDB tests.
On some Windows versions of GDB this is more stable than setting breakpoints via function names.
2014-10-31 18:49:59 +01:00
Brian Anderson 0a83d02efc Ignore two gdb tests on windows that are failing on the bots 2014-09-18 18:35:41 -07:00
Alex Crichton 0515e71531 test: Un-ignore some GDB pretty printing tests
I've confirmed that these are working on the snapshot builders

Closes #16919
2014-09-17 07:50:30 -07:00
Alex Crichton b090905b17 test: Ignore failing gdb pretty tests
These tests are blocking a linux nightly and a new snapshot, so ignore them for
now. Their tracking issue is #16919.
2014-09-02 08:34:00 -07:00
Michael Woerister 849ae5d881 debuginfo: Emit different autotest debugger scripts depending on GDB version. 2014-08-27 15:19:14 +02:00
Michael Woerister 6974b4f1b5 debuginfo: Add GDB pretty printers for structs and enums. 2014-08-27 15:19:14 +02:00