Auto merge of #28529 - Manishearth:rollup, r=Manishearth
- Successful merges: #28463, #28507, #28522, #28525, #28526 - Failed merges:
This commit is contained in:
@@ -321,7 +321,7 @@ there's a lot of concurrent access happening.
|
|||||||
|
|
||||||
# Composition
|
# Composition
|
||||||
|
|
||||||
A common gripe when reading Rust code is with types like `Rc<RefCell<Vec<T>>>` (or even more more
|
A common gripe when reading Rust code is with types like `Rc<RefCell<Vec<T>>>` (or even more
|
||||||
complicated compositions of such types). It's not always clear what the composition does, or why the
|
complicated compositions of such types). It's not always clear what the composition does, or why the
|
||||||
author chose one like this (and when one should be using such a composition in one's own code)
|
author chose one like this (and when one should be using such a composition in one's own code)
|
||||||
|
|
||||||
|
|||||||
@@ -26,8 +26,8 @@ to help us make sense of code that can possibly be concurrent.
|
|||||||
### `Send`
|
### `Send`
|
||||||
|
|
||||||
The first trait we're going to talk about is
|
The first trait we're going to talk about is
|
||||||
[`Send`](../std/marker/trait.Send.html). When a type `T` implements `Send`, it indicates
|
[`Send`](../std/marker/trait.Send.html). When a type `T` implements `Send`, it
|
||||||
to the compiler that something of this type is able to have ownership transferred
|
indicates that something of this type is able to have ownership transferred
|
||||||
safely between threads.
|
safely between threads.
|
||||||
|
|
||||||
This is important to enforce certain restrictions. For example, if we have a
|
This is important to enforce certain restrictions. For example, if we have a
|
||||||
@@ -42,13 +42,19 @@ us enforce that it can't leave the current thread.
|
|||||||
### `Sync`
|
### `Sync`
|
||||||
|
|
||||||
The second of these traits is called [`Sync`](../std/marker/trait.Sync.html).
|
The second of these traits is called [`Sync`](../std/marker/trait.Sync.html).
|
||||||
When a type `T` implements `Sync`, it indicates to the compiler that something
|
When a type `T` implements `Sync`, it indicates that something
|
||||||
of this type has no possibility of introducing memory unsafety when used from
|
of this type has no possibility of introducing memory unsafety when used from
|
||||||
multiple threads concurrently.
|
multiple threads concurrently through shared references. This implies that
|
||||||
|
types which don't have [interior mutability](mutability.html) are inherently
|
||||||
|
`Sync`, which includes simple primitive types (like `u8`) and aggregate types
|
||||||
|
containing them.
|
||||||
|
|
||||||
For example, sharing immutable data with an atomic reference count is
|
For sharing references across threads, Rust provides a wrapper type called
|
||||||
threadsafe. Rust provides a type like this, `Arc<T>`, and it implements `Sync`,
|
`Arc<T>`. `Arc<T>` implements `Send` and `Sync` if and only if `T` implements
|
||||||
so it is safe to share between threads.
|
both `Send` and `Sync`. For example, an object of type `Arc<RefCell<U>>` cannot
|
||||||
|
be transferred across threads because
|
||||||
|
[`RefCell`](choosing-your-guarantees.html#refcell%3Ct%3E) does not implement
|
||||||
|
`Sync`, consequently `Arc<RefCell<U>>` would not implement `Send`.
|
||||||
|
|
||||||
These two traits allow you to use the type system to make strong guarantees
|
These two traits allow you to use the type system to make strong guarantees
|
||||||
about the properties of your code under concurrency. Before we demonstrate
|
about the properties of your code under concurrency. Before we demonstrate
|
||||||
@@ -70,7 +76,7 @@ fn main() {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
The `thread::spawn()` method accepts a closure, which is executed in a
|
The `thread::spawn()` method accepts a [closure](closures.html), which is executed in a
|
||||||
new thread. It returns a handle to the thread, that can be used to
|
new thread. It returns a handle to the thread, that can be used to
|
||||||
wait for the child thread to finish and extract its result:
|
wait for the child thread to finish and extract its result:
|
||||||
|
|
||||||
@@ -215,29 +221,18 @@ fn main() {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Note that the value of `i` is bound (copied) to the closure and not shared
|
||||||
|
among the threads.
|
||||||
|
|
||||||
If we'd tried to use `Mutex<T>` without wrapping it in an `Arc<T>` we would have
|
Also note that [`lock`](../std/sync/struct.Mutex.html#method.lock) method of
|
||||||
seen another error like:
|
[`Mutex`](../std/sync/struct.Mutex.html) has this signature:
|
||||||
|
|
||||||
```text
|
|
||||||
error: the trait `core::marker::Send` is not implemented for the type `std::sync::mutex::MutexGuard<'_, collections::vec::Vec<u32>>` [E0277]
|
|
||||||
thread::spawn(move || {
|
|
||||||
^~~~~~~~~~~~~
|
|
||||||
note: `std::sync::mutex::MutexGuard<'_, collections::vec::Vec<u32>>` cannot be sent between threads safely
|
|
||||||
thread::spawn(move || {
|
|
||||||
^~~~~~~~~~~~~
|
|
||||||
```
|
|
||||||
|
|
||||||
You see, [`Mutex`](../std/sync/struct.Mutex.html) has a
|
|
||||||
[`lock`](../std/sync/struct.Mutex.html#method.lock)
|
|
||||||
method which has this signature:
|
|
||||||
|
|
||||||
```ignore
|
```ignore
|
||||||
fn lock(&self) -> LockResult<MutexGuard<T>>
|
fn lock(&self) -> LockResult<MutexGuard<T>>
|
||||||
```
|
```
|
||||||
|
|
||||||
and because `Send` is not implemented for `MutexGuard<T>`, we couldn't have
|
and because `Send` is not implemented for `MutexGuard<T>`, the guard cannot
|
||||||
transferred the guard across thread boundaries on it's own.
|
cross thread boundaries, ensuring thread-locality of lock acquire and release.
|
||||||
|
|
||||||
Let's examine the body of the thread more closely:
|
Let's examine the body of the thread more closely:
|
||||||
|
|
||||||
@@ -317,22 +312,24 @@ use std::sync::mpsc;
|
|||||||
fn main() {
|
fn main() {
|
||||||
let (tx, rx) = mpsc::channel();
|
let (tx, rx) = mpsc::channel();
|
||||||
|
|
||||||
for _ in 0..10 {
|
for i in 0..10 {
|
||||||
let tx = tx.clone();
|
let tx = tx.clone();
|
||||||
|
|
||||||
thread::spawn(move || {
|
thread::spawn(move || {
|
||||||
let answer = 42;
|
let answer = i * i;
|
||||||
|
|
||||||
tx.send(answer);
|
tx.send(answer);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
rx.recv().ok().expect("Could not receive answer");
|
for _ in 0..10 {
|
||||||
|
println!("{}", rx.recv().unwrap());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
A `u32` is `Send` because we can make a copy. So we create a thread, ask it to calculate
|
Here we create 10 threads, asking each to calculate the square of a number (`i`
|
||||||
the answer, and then it `send()`s us the answer over the channel.
|
at the time of `spawn()`), and then `send()` back the answer over the channel.
|
||||||
|
|
||||||
|
|
||||||
## Panics
|
## Panics
|
||||||
|
|||||||
@@ -298,10 +298,18 @@ const FOO: i32 = { 0 }; // but brackets are useless here
|
|||||||
```
|
```
|
||||||
"##,
|
"##,
|
||||||
|
|
||||||
|
// FIXME(#24111) Change the language here when const fn stabilizes
|
||||||
E0015: r##"
|
E0015: r##"
|
||||||
The only functions that can be called in static or constant expressions are
|
The only functions that can be called in static or constant expressions are
|
||||||
`const` functions. Rust currently does not support more general compile-time
|
`const` functions, and struct/enum constructors. `const` functions are only
|
||||||
function execution.
|
available on a nightly compiler. Rust currently does not support more general
|
||||||
|
compile-time function execution.
|
||||||
|
|
||||||
|
```
|
||||||
|
const FOO: Option<u8> = Some(1); // enum constructor
|
||||||
|
struct Bar {x: u8}
|
||||||
|
const BAR: Bar = Bar {x: 1}; // struct constructor
|
||||||
|
```
|
||||||
|
|
||||||
See [RFC 911] for more details on the design of `const fn`s.
|
See [RFC 911] for more details on the design of `const fn`s.
|
||||||
|
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ use util::nodemap::NodeMap;
|
|||||||
use rustc_front::hir;
|
use rustc_front::hir;
|
||||||
use syntax::ast;
|
use syntax::ast;
|
||||||
use syntax::codemap::Span;
|
use syntax::codemap::Span;
|
||||||
|
use syntax::feature_gate::UnstableFeatures;
|
||||||
use rustc_front::visit::{self, FnKind, Visitor};
|
use rustc_front::visit::{self, FnKind, Visitor};
|
||||||
|
|
||||||
use std::collections::hash_map::Entry;
|
use std::collections::hash_map::Entry;
|
||||||
@@ -709,10 +710,21 @@ fn check_expr<'a, 'tcx>(v: &mut CheckCrateVisitor<'a, 'tcx>,
|
|||||||
if !is_const {
|
if !is_const {
|
||||||
v.add_qualif(ConstQualif::NOT_CONST);
|
v.add_qualif(ConstQualif::NOT_CONST);
|
||||||
if v.mode != Mode::Var {
|
if v.mode != Mode::Var {
|
||||||
span_err!(v.tcx.sess, e.span, E0015,
|
// FIXME(#24111) Remove this check when const fn stabilizes
|
||||||
"function calls in {}s are limited to \
|
if let UnstableFeatures::Disallow = v.tcx.sess.opts.unstable_features {
|
||||||
constant functions, \
|
span_err!(v.tcx.sess, e.span, E0015,
|
||||||
struct and enum constructors", v.msg());
|
"function calls in {}s are limited to \
|
||||||
|
struct and enum constructors", v.msg());
|
||||||
|
v.tcx.sess.span_note(e.span,
|
||||||
|
"a limited form of compile-time function \
|
||||||
|
evaluation is available on a nightly \
|
||||||
|
compiler via `const fn`");
|
||||||
|
} else {
|
||||||
|
span_err!(v.tcx.sess, e.span, E0015,
|
||||||
|
"function calls in {}s are limited to \
|
||||||
|
constant functions, \
|
||||||
|
struct and enum constructors", v.msg());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -684,15 +684,15 @@ fn contains_macro_use(fld: &mut MacroExpander, attrs: &[ast::Attribute]) -> bool
|
|||||||
// logic as for expression-position macro invocations.
|
// logic as for expression-position macro invocations.
|
||||||
pub fn expand_item_mac(it: P<ast::Item>,
|
pub fn expand_item_mac(it: P<ast::Item>,
|
||||||
fld: &mut MacroExpander) -> SmallVector<P<ast::Item>> {
|
fld: &mut MacroExpander) -> SmallVector<P<ast::Item>> {
|
||||||
let (extname, path_span, tts) = match it.node {
|
let (extname, path_span, tts, span, attrs, ident) = it.and_then(|it| { match it.node {
|
||||||
ItemMac(codemap::Spanned {
|
ItemMac(codemap::Spanned {
|
||||||
node: MacInvocTT(ref pth, ref tts, _),
|
node: MacInvocTT(pth, tts, _),
|
||||||
..
|
..
|
||||||
}) => {
|
}) => {
|
||||||
(pth.segments[0].identifier.name, pth.span, (*tts).clone())
|
(pth.segments[0].identifier.name, pth.span, tts, it.span, it.attrs, it.ident)
|
||||||
}
|
}
|
||||||
_ => fld.cx.span_bug(it.span, "invalid item macro invocation")
|
_ => fld.cx.span_bug(it.span, "invalid item macro invocation")
|
||||||
};
|
}});
|
||||||
|
|
||||||
let fm = fresh_mark();
|
let fm = fresh_mark();
|
||||||
let items = {
|
let items = {
|
||||||
@@ -706,48 +706,48 @@ pub fn expand_item_mac(it: P<ast::Item>,
|
|||||||
}
|
}
|
||||||
|
|
||||||
Some(rc) => match *rc {
|
Some(rc) => match *rc {
|
||||||
NormalTT(ref expander, span, allow_internal_unstable) => {
|
NormalTT(ref expander, tt_span, allow_internal_unstable) => {
|
||||||
if it.ident.name != parse::token::special_idents::invalid.name {
|
if ident.name != parse::token::special_idents::invalid.name {
|
||||||
fld.cx
|
fld.cx
|
||||||
.span_err(path_span,
|
.span_err(path_span,
|
||||||
&format!("macro {}! expects no ident argument, given '{}'",
|
&format!("macro {}! expects no ident argument, given '{}'",
|
||||||
extname,
|
extname,
|
||||||
it.ident));
|
ident));
|
||||||
return SmallVector::zero();
|
return SmallVector::zero();
|
||||||
}
|
}
|
||||||
fld.cx.bt_push(ExpnInfo {
|
fld.cx.bt_push(ExpnInfo {
|
||||||
call_site: it.span,
|
call_site: span,
|
||||||
callee: NameAndSpan {
|
callee: NameAndSpan {
|
||||||
format: MacroBang(extname),
|
format: MacroBang(extname),
|
||||||
span: span,
|
span: tt_span,
|
||||||
allow_internal_unstable: allow_internal_unstable,
|
allow_internal_unstable: allow_internal_unstable,
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// mark before expansion:
|
// mark before expansion:
|
||||||
let marked_before = mark_tts(&tts[..], fm);
|
let marked_before = mark_tts(&tts[..], fm);
|
||||||
expander.expand(fld.cx, it.span, &marked_before[..])
|
expander.expand(fld.cx, span, &marked_before[..])
|
||||||
}
|
}
|
||||||
IdentTT(ref expander, span, allow_internal_unstable) => {
|
IdentTT(ref expander, tt_span, allow_internal_unstable) => {
|
||||||
if it.ident.name == parse::token::special_idents::invalid.name {
|
if ident.name == parse::token::special_idents::invalid.name {
|
||||||
fld.cx.span_err(path_span,
|
fld.cx.span_err(path_span,
|
||||||
&format!("macro {}! expects an ident argument",
|
&format!("macro {}! expects an ident argument",
|
||||||
extname));
|
extname));
|
||||||
return SmallVector::zero();
|
return SmallVector::zero();
|
||||||
}
|
}
|
||||||
fld.cx.bt_push(ExpnInfo {
|
fld.cx.bt_push(ExpnInfo {
|
||||||
call_site: it.span,
|
call_site: span,
|
||||||
callee: NameAndSpan {
|
callee: NameAndSpan {
|
||||||
format: MacroBang(extname),
|
format: MacroBang(extname),
|
||||||
span: span,
|
span: tt_span,
|
||||||
allow_internal_unstable: allow_internal_unstable,
|
allow_internal_unstable: allow_internal_unstable,
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// mark before expansion:
|
// mark before expansion:
|
||||||
let marked_tts = mark_tts(&tts[..], fm);
|
let marked_tts = mark_tts(&tts[..], fm);
|
||||||
expander.expand(fld.cx, it.span, it.ident, marked_tts)
|
expander.expand(fld.cx, span, ident, marked_tts)
|
||||||
}
|
}
|
||||||
MacroRulesTT => {
|
MacroRulesTT => {
|
||||||
if it.ident.name == parse::token::special_idents::invalid.name {
|
if ident.name == parse::token::special_idents::invalid.name {
|
||||||
fld.cx.span_err(path_span,
|
fld.cx.span_err(path_span,
|
||||||
&format!("macro_rules! expects an ident argument")
|
&format!("macro_rules! expects an ident argument")
|
||||||
);
|
);
|
||||||
@@ -755,7 +755,7 @@ pub fn expand_item_mac(it: P<ast::Item>,
|
|||||||
}
|
}
|
||||||
|
|
||||||
fld.cx.bt_push(ExpnInfo {
|
fld.cx.bt_push(ExpnInfo {
|
||||||
call_site: it.span,
|
call_site: span,
|
||||||
callee: NameAndSpan {
|
callee: NameAndSpan {
|
||||||
format: MacroBang(extname),
|
format: MacroBang(extname),
|
||||||
span: None,
|
span: None,
|
||||||
@@ -767,7 +767,7 @@ pub fn expand_item_mac(it: P<ast::Item>,
|
|||||||
});
|
});
|
||||||
// DON'T mark before expansion.
|
// DON'T mark before expansion.
|
||||||
|
|
||||||
let allow_internal_unstable = attr::contains_name(&it.attrs,
|
let allow_internal_unstable = attr::contains_name(&attrs,
|
||||||
"allow_internal_unstable");
|
"allow_internal_unstable");
|
||||||
|
|
||||||
// ensure any #[allow_internal_unstable]s are
|
// ensure any #[allow_internal_unstable]s are
|
||||||
@@ -777,18 +777,19 @@ pub fn expand_item_mac(it: P<ast::Item>,
|
|||||||
feature_gate::emit_feature_err(
|
feature_gate::emit_feature_err(
|
||||||
&fld.cx.parse_sess.span_diagnostic,
|
&fld.cx.parse_sess.span_diagnostic,
|
||||||
"allow_internal_unstable",
|
"allow_internal_unstable",
|
||||||
it.span,
|
span,
|
||||||
feature_gate::GateIssue::Language,
|
feature_gate::GateIssue::Language,
|
||||||
feature_gate::EXPLAIN_ALLOW_INTERNAL_UNSTABLE)
|
feature_gate::EXPLAIN_ALLOW_INTERNAL_UNSTABLE)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let export = attr::contains_name(&attrs, "macro_export");
|
||||||
let def = ast::MacroDef {
|
let def = ast::MacroDef {
|
||||||
ident: it.ident,
|
ident: ident,
|
||||||
attrs: it.attrs.clone(),
|
attrs: attrs,
|
||||||
id: ast::DUMMY_NODE_ID,
|
id: ast::DUMMY_NODE_ID,
|
||||||
span: it.span,
|
span: span,
|
||||||
imported_from: None,
|
imported_from: None,
|
||||||
export: attr::contains_name(&it.attrs, "macro_export"),
|
export: export,
|
||||||
use_locally: true,
|
use_locally: true,
|
||||||
allow_internal_unstable: allow_internal_unstable,
|
allow_internal_unstable: allow_internal_unstable,
|
||||||
body: tts,
|
body: tts,
|
||||||
@@ -800,7 +801,7 @@ pub fn expand_item_mac(it: P<ast::Item>,
|
|||||||
return SmallVector::zero();
|
return SmallVector::zero();
|
||||||
}
|
}
|
||||||
_ => {
|
_ => {
|
||||||
fld.cx.span_err(it.span,
|
fld.cx.span_err(span,
|
||||||
&format!("{}! is not legal in item position",
|
&format!("{}! is not legal in item position",
|
||||||
extname));
|
extname));
|
||||||
return SmallVector::zero();
|
return SmallVector::zero();
|
||||||
|
|||||||
@@ -197,6 +197,12 @@ const KNOWN_FEATURES: &'static [(&'static str, &'static str, Option<u32>, Status
|
|||||||
|
|
||||||
// allow overloading augmented assignment operations like `a += b`
|
// allow overloading augmented assignment operations like `a += b`
|
||||||
("augmented_assignments", "1.5.0", None, Active),
|
("augmented_assignments", "1.5.0", None, Active),
|
||||||
|
|
||||||
|
// allow `#[no_debug]`
|
||||||
|
("no_debug", "1.5.0", None, Active),
|
||||||
|
|
||||||
|
// allow `#[omit_gdb_pretty_printer_section]`
|
||||||
|
("omit_gdb_pretty_printer_section", "1.5.0", None, Active),
|
||||||
];
|
];
|
||||||
// (changing above list without updating src/doc/reference.md makes @cmr sad)
|
// (changing above list without updating src/doc/reference.md makes @cmr sad)
|
||||||
|
|
||||||
@@ -320,8 +326,13 @@ pub const KNOWN_ATTRIBUTES: &'static [(&'static str, AttributeType, AttributeGat
|
|||||||
("link_section", Whitelisted, Ungated),
|
("link_section", Whitelisted, Ungated),
|
||||||
("no_builtins", Whitelisted, Ungated),
|
("no_builtins", Whitelisted, Ungated),
|
||||||
("no_mangle", Whitelisted, Ungated),
|
("no_mangle", Whitelisted, Ungated),
|
||||||
("no_debug", Whitelisted, Ungated),
|
("no_debug", Whitelisted, Gated("no_debug",
|
||||||
("omit_gdb_pretty_printer_section", Whitelisted, Ungated),
|
"the `#[no_debug]` attribute \
|
||||||
|
is an experimental feature")),
|
||||||
|
("omit_gdb_pretty_printer_section", Whitelisted, Gated("omit_gdb_pretty_printer_section",
|
||||||
|
"the `#[omit_gdb_pretty_printer_section]` \
|
||||||
|
attribute is just used for the Rust test \
|
||||||
|
suite")),
|
||||||
("unsafe_no_drop_flag", Whitelisted, Gated("unsafe_no_drop_flag",
|
("unsafe_no_drop_flag", Whitelisted, Gated("unsafe_no_drop_flag",
|
||||||
"unsafe_no_drop_flag has unstable semantics \
|
"unsafe_no_drop_flag has unstable semantics \
|
||||||
and may be removed in the future")),
|
and may be removed in the future")),
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
#![crate_type = "rlib"]
|
#![crate_type = "rlib"]
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// no-prefer-dynamic
|
// no-prefer-dynamic
|
||||||
|
|||||||
12
src/test/compile-fail/feature-gate-no-debug.rs
Normal file
12
src/test/compile-fail/feature-gate-no-debug.rs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
// Copyright 2015 The Rust Project Developers. See the COPYRIGHT
|
||||||
|
// file at the top-level directory of this distribution and at
|
||||||
|
// http://rust-lang.org/COPYRIGHT.
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||||
|
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||||
|
// option. This file may not be copied, modified, or distributed
|
||||||
|
// except according to those terms.
|
||||||
|
|
||||||
|
#[no_debug] //~ ERROR the `#[no_debug]` attribute is
|
||||||
|
fn main() {}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
// Copyright 2015 The Rust Project Developers. See the COPYRIGHT
|
||||||
|
// file at the top-level directory of this distribution and at
|
||||||
|
// http://rust-lang.org/COPYRIGHT.
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||||
|
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||||
|
// option. This file may not be copied, modified, or distributed
|
||||||
|
// except according to those terms.
|
||||||
|
|
||||||
|
#[omit_gdb_pretty_printer_section] //~ ERROR the `#[omit_gdb_pretty_printer_section]` attribute is
|
||||||
|
fn main() {}
|
||||||
@@ -80,6 +80,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
trait TraitWithAssocType {
|
trait TraitWithAssocType {
|
||||||
|
|||||||
@@ -44,6 +44,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// N.B. These are `mut` only so they don't constant fold away.
|
// N.B. These are `mut` only so they don't constant fold away.
|
||||||
|
|||||||
@@ -49,6 +49,7 @@
|
|||||||
// gdb-command:continue
|
// gdb-command:continue
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// N.B. These are `mut` only so they don't constant fold away.
|
// N.B. These are `mut` only so they don't constant fold away.
|
||||||
|
|||||||
@@ -64,6 +64,7 @@
|
|||||||
// gdb-command:continue
|
// gdb-command:continue
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -82,6 +82,7 @@
|
|||||||
// gdb-check:$28 = 9.25
|
// gdb-check:$28 = 9.25
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
static mut B: bool = false;
|
static mut B: bool = false;
|
||||||
|
|||||||
@@ -87,6 +87,7 @@
|
|||||||
// lldb-check:[...]$12 = 3.5
|
// lldb-check:[...]$12 = 3.5
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -108,6 +108,7 @@
|
|||||||
// lldb-check:[...]$12 = 3.5
|
// lldb-check:[...]$12 = 3.5
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -40,6 +40,7 @@
|
|||||||
// lldb-check:[...]$2 = TheC
|
// lldb-check:[...]$2 = TheC
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
enum ABC { TheA, TheB, TheC }
|
enum ABC { TheA, TheB, TheC }
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
// lldb-check:[...]$2 = TheOnlyCase(4820353753753434)
|
// lldb-check:[...]$2 = TheOnlyCase(4820353753753434)
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// The first element is to ensure proper alignment, irrespective of the machines word size. Since
|
// The first element is to ensure proper alignment, irrespective of the machines word size. Since
|
||||||
|
|||||||
@@ -64,6 +64,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct SomeStruct {
|
struct SomeStruct {
|
||||||
|
|||||||
@@ -42,6 +42,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -112,6 +112,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -32,6 +32,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct StructWithSomePadding {
|
struct StructWithSomePadding {
|
||||||
|
|||||||
@@ -70,6 +70,7 @@
|
|||||||
// lldb-check:[...]$6 = Case1 { x: 0, y: 8970181431921507452 }
|
// lldb-check:[...]$6 = Case1 { x: 0, y: 8970181431921507452 }
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
|
|||||||
@@ -45,6 +45,7 @@
|
|||||||
// lldb-check:[...]$2 = (4444.5, 5555, 6666, 7777.5)
|
// lldb-check:[...]$2 = (4444.5, 5555, 6666, 7777.5)
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
trait Trait {
|
trait Trait {
|
||||||
|
|||||||
@@ -64,6 +64,7 @@
|
|||||||
// lldb-check:[...]$6 = (StructWithDrop { a: OneHundred, b: Vienna }, 9)
|
// lldb-check:[...]$6 = (StructWithDrop { a: OneHundred, b: Vienna }, 9)
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::AnEnum::{OneHundred, OneThousand, OneMillion};
|
use self::AnEnum::{OneHundred, OneThousand, OneMillion};
|
||||||
|
|||||||
@@ -99,6 +99,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::AutoDiscriminant::{One, Two, Three};
|
use self::AutoDiscriminant::{One, Two, Three};
|
||||||
|
|||||||
@@ -46,6 +46,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn some_generic_fun<T1, T2>(a: T1, b: T2) -> (T2, T1) {
|
fn some_generic_fun<T1, T2>(a: T1, b: T2) -> (T2, T1) {
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
// compile-flags:-g
|
// compile-flags:-g
|
||||||
|
|
||||||
#![allow(dead_code, unused_variables)]
|
#![allow(dead_code, unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
#![feature(const_fn)]
|
#![feature(const_fn)]
|
||||||
#![feature(static_mutex)]
|
#![feature(static_mutex)]
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
// compile-flags:-g
|
// compile-flags:-g
|
||||||
|
|
||||||
#![allow(dead_code, unused_variables)]
|
#![allow(dead_code, unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// This test makes sure that the compiler doesn't crash when trying to assign
|
// This test makes sure that the compiler doesn't crash when trying to assign
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
// option. This file may not be copied, modified, or distributed
|
// option. This file may not be copied, modified, or distributed
|
||||||
// except according to those terms.
|
// except according to those terms.
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// min-lldb-version: 310
|
// min-lldb-version: 310
|
||||||
@@ -20,7 +21,7 @@ extern crate cross_crate_spans;
|
|||||||
|
|
||||||
// === GDB TESTS ===================================================================================
|
// === GDB TESTS ===================================================================================
|
||||||
|
|
||||||
// gdb-command:break cross_crate_spans.rs:23
|
// gdb-command:break cross_crate_spans.rs:24
|
||||||
// gdb-command:run
|
// gdb-command:run
|
||||||
|
|
||||||
// gdb-command:print result
|
// gdb-command:print result
|
||||||
@@ -43,7 +44,7 @@ extern crate cross_crate_spans;
|
|||||||
|
|
||||||
// === LLDB TESTS ==================================================================================
|
// === LLDB TESTS ==================================================================================
|
||||||
|
|
||||||
// lldb-command:b cross_crate_spans.rs:23
|
// lldb-command:b cross_crate_spans.rs:24
|
||||||
// lldb-command:run
|
// lldb-command:run
|
||||||
|
|
||||||
// lldb-command:print result
|
// lldb-command:print result
|
||||||
|
|||||||
@@ -312,6 +312,7 @@
|
|||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_patterns)]
|
#![feature(box_patterns)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Univariant::Unit;
|
use self::Univariant::Unit;
|
||||||
|
|||||||
@@ -154,6 +154,7 @@
|
|||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_patterns)]
|
#![feature(box_patterns)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
@@ -245,6 +245,7 @@
|
|||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_patterns)]
|
#![feature(box_patterns)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Univariant::Unit;
|
use self::Univariant::Unit;
|
||||||
|
|||||||
@@ -50,6 +50,7 @@
|
|||||||
// lldb-check:[...]$4 = StructPaddedAtEnd { x: [22, 23], y: [24, 25] }
|
// lldb-check:[...]$4 = StructPaddedAtEnd { x: [22, 23], y: [24, 25] }
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct NoPadding1 {
|
struct NoPadding1 {
|
||||||
|
|||||||
@@ -44,6 +44,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -224,6 +224,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn immediate_args(a: isize, b: bool, c: f64) {
|
fn immediate_args(a: isize, b: bool, c: f64) {
|
||||||
|
|||||||
@@ -45,6 +45,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -247,6 +247,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![allow(dead_code, unused_assignments, unused_variables)]
|
#![allow(dead_code, unused_assignments, unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[no_stack_check]
|
#[no_stack_check]
|
||||||
|
|||||||
@@ -126,6 +126,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn immediate_args(a: isize, b: bool, c: f64) {
|
fn immediate_args(a: isize, b: bool, c: f64) {
|
||||||
|
|||||||
@@ -62,6 +62,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// This test case makes sure that we get correct type descriptions for the enum
|
// This test case makes sure that we get correct type descriptions for the enum
|
||||||
|
|||||||
@@ -69,6 +69,7 @@
|
|||||||
// lldb-check:[...]$8 = ((5, Struct { a: 6, b: 7.5 }), (Struct { a: 6, b: 7.5 }, 5))
|
// lldb-check:[...]$8 = ((5, Struct { a: 6, b: 7.5 }), (Struct { a: 6, b: 7.5 }, 5))
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
|
|||||||
@@ -70,6 +70,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn outer<TA: Clone>(a: TA) {
|
fn outer<TA: Clone>(a: TA) {
|
||||||
|
|||||||
@@ -112,6 +112,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -31,6 +31,7 @@
|
|||||||
// gdb-command:continue
|
// gdb-command:continue
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
@@ -29,6 +29,7 @@
|
|||||||
// gdb-check:$4 = {{a = -1}}
|
// gdb-check:$4 = {{a = -1}}
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Regular::{Case1, Case2, Case3};
|
use self::Regular::{Case1, Case2, Case3};
|
||||||
|
|||||||
@@ -41,6 +41,7 @@
|
|||||||
// lldb-check:[...]$3 = AGenericStruct<f64, generic_struct::AGenericStruct<i32, f64>> { key: 6.5, value: AGenericStruct<i32, f64> { key: 7, value: 8.5 } }
|
// lldb-check:[...]$3 = AGenericStruct<f64, generic_struct::AGenericStruct<i32, f64>> { key: 6.5, value: AGenericStruct<i32, f64> { key: 7, value: 8.5 } }
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct AGenericStruct<TKey, TValue> {
|
struct AGenericStruct<TKey, TValue> {
|
||||||
|
|||||||
@@ -47,6 +47,7 @@
|
|||||||
// lldb-command:print univariant
|
// lldb-command:print univariant
|
||||||
// lldb-check:[...]$3 = TheOnlyCase(-1)
|
// lldb-check:[...]$3 = TheOnlyCase(-1)
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Regular::{Case1, Case2, Case3};
|
use self::Regular::{Case1, Case2, Case3};
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// This test case makes sure that debug info does not ICE when include_str is
|
// This test case makes sure that debug info does not ICE when include_str is
|
||||||
|
|||||||
@@ -16,9 +16,10 @@
|
|||||||
|
|
||||||
// gdb-command:run
|
// gdb-command:run
|
||||||
// gdb-command:next
|
// gdb-command:next
|
||||||
// gdb-check:[...]34[...]s
|
// gdb-check:[...]35[...]s
|
||||||
// gdb-command:continue
|
// gdb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// IF YOU MODIFY THIS FILE, BE CAREFUL TO ADAPT THE LINE NUMBERS IN THE DEBUGGER COMMANDS
|
// IF YOU MODIFY THIS FILE, BE CAREFUL TO ADAPT THE LINE NUMBERS IN THE DEBUGGER COMMANDS
|
||||||
|
|||||||
@@ -30,6 +30,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct ZeroSizedStruct;
|
struct ZeroSizedStruct;
|
||||||
|
|||||||
@@ -85,6 +85,7 @@
|
|||||||
// lldb-check:[...]$6 = 1000000
|
// lldb-check:[...]$6 = 1000000
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -133,6 +133,7 @@
|
|||||||
// lldb-check:[...]$15 = -1
|
// lldb-check:[...]$15 = -1
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -125,6 +125,7 @@
|
|||||||
// lldb-check:[...]$17 = 232
|
// lldb-check:[...]$17 = 232
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
@@ -69,6 +69,7 @@
|
|||||||
// lldb-check:[...]$5 = false
|
// lldb-check:[...]$5 = false
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -131,6 +131,7 @@
|
|||||||
// lldb-check:[...]$12 = 2
|
// lldb-check:[...]$12 = 2
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -70,6 +70,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -131,6 +131,7 @@
|
|||||||
// lldb-check:[...]$12 = 2
|
// lldb-check:[...]$12 = 2
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -110,6 +110,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
macro_rules! trivial {
|
macro_rules! trivial {
|
||||||
|
|||||||
@@ -348,6 +348,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(unused_assignments)]
|
#![allow(unused_assignments)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
static mut MUT_INT: isize = 0;
|
static mut MUT_INT: isize = 0;
|
||||||
|
|||||||
@@ -29,6 +29,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
@@ -113,6 +113,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -113,6 +113,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -113,6 +113,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -113,6 +113,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -113,6 +113,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -44,6 +44,7 @@
|
|||||||
// lldb-check:[...]$2 = 30303
|
// lldb-check:[...]$2 = 30303
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn function_one() {
|
fn function_one() {
|
||||||
|
|||||||
@@ -44,6 +44,7 @@
|
|||||||
// lldb-check:[...]$2 = 30303
|
// lldb-check:[...]$2 = 30303
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn function_one() {
|
fn function_one() {
|
||||||
|
|||||||
@@ -93,6 +93,7 @@
|
|||||||
// lldb-check:[...]$11 = 20
|
// lldb-check:[...]$11 = 20
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -22,6 +22,7 @@
|
|||||||
// gdb-check:$2 = {<No data fields>}
|
// gdb-check:$2 = {<No data fields>}
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
enum ANilEnum {}
|
enum ANilEnum {}
|
||||||
|
|||||||
@@ -23,6 +23,8 @@
|
|||||||
// gdb-command:continue
|
// gdb-command:continue
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(no_debug)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn function_with_debuginfo() {
|
fn function_with_debuginfo() {
|
||||||
|
|||||||
@@ -79,6 +79,7 @@
|
|||||||
// lldb-check:[...]$9 = Nope
|
// lldb-check:[...]$9 = Nope
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// If a struct has exactly two variants, one of them is empty, and the other one
|
// If a struct has exactly two variants, one of them is empty, and the other one
|
||||||
|
|||||||
@@ -73,6 +73,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[repr(packed)]
|
#[repr(packed)]
|
||||||
|
|||||||
@@ -59,6 +59,7 @@
|
|||||||
// lldb-check:[...]$5 = 40
|
// lldb-check:[...]$5 = 40
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[repr(packed)]
|
#[repr(packed)]
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
// is taken from issue #11083.
|
// is taken from issue #11083.
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
pub struct Window<'a> {
|
pub struct Window<'a> {
|
||||||
|
|||||||
@@ -69,6 +69,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Opt::{Empty, Val};
|
use self::Opt::{Empty, Val};
|
||||||
|
|||||||
@@ -112,6 +112,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -112,6 +112,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
|
|||||||
@@ -58,6 +58,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn a_function(x: bool, y: bool) {
|
fn a_function(x: bool, y: bool) {
|
||||||
|
|||||||
@@ -57,6 +57,7 @@
|
|||||||
// lldb-check:[...]$5 = 20
|
// lldb-check:[...]$5 = 20
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -41,6 +41,7 @@
|
|||||||
// gdb-command:continue
|
// gdb-command:continue
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
#![feature(core_simd)]
|
#![feature(core_simd)]
|
||||||
|
|
||||||
|
|||||||
@@ -78,6 +78,7 @@
|
|||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -96,6 +96,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct NoPadding16 {
|
struct NoPadding16 {
|
||||||
|
|||||||
@@ -91,6 +91,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
static mut NO_PADDING_8: (i8, u8) = (-50, 50);
|
static mut NO_PADDING_8: (i8, u8) = (-50, 50);
|
||||||
|
|||||||
@@ -53,6 +53,7 @@
|
|||||||
// lldb-check:[...]$4 = 5
|
// lldb-check:[...]$4 = 5
|
||||||
// lldb-command:continue
|
// lldb-command:continue
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
@@ -41,6 +41,7 @@
|
|||||||
// lldb-check:[...]$2 = TheOnlyCase(Struct { x: 123, y: 456, z: 789 })
|
// lldb-check:[...]$2 = TheOnlyCase(Struct { x: 123, y: 456, z: 789 })
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Regular::{Case1, Case2};
|
use self::Regular::{Case1, Case2};
|
||||||
|
|||||||
@@ -56,6 +56,7 @@
|
|||||||
// lldb-check:[...]$7 = Tree { x: Simple { x: 25 }, y: InternalPaddingParent { x: InternalPadding { x: 26, y: 27 }, y: InternalPadding { x: 28, y: 29 }, z: InternalPadding { x: 30, y: 31 } }, z: BagInBag { x: Bag { x: Simple { x: 32 } } } }
|
// lldb-check:[...]$7 = Tree { x: Simple { x: 25 }, y: InternalPaddingParent { x: InternalPadding { x: 26, y: 27 }, y: InternalPadding { x: 28, y: 29 }, z: InternalPadding { x: 30, y: 31 } }, z: BagInBag { x: Bag { x: Simple { x: 32 } } } }
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Simple {
|
struct Simple {
|
||||||
|
|||||||
@@ -48,6 +48,7 @@
|
|||||||
// lldb-check:[...]$3 = TheOnlyCase { a: -1 }
|
// lldb-check:[...]$3 = TheOnlyCase { a: -1 }
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Regular::{Case1, Case2, Case3};
|
use self::Regular::{Case1, Case2, Case3};
|
||||||
|
|||||||
@@ -44,6 +44,7 @@
|
|||||||
// lldb-check:[...]$3 = NestedOuter { a: NestedInner { a: WithDestructor { x: 7890, y: 9870 } } }
|
// lldb-check:[...]$3 = NestedOuter { a: NestedInner { a: WithDestructor { x: 7890, y: 9870 } } }
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct NoDestructor {
|
struct NoDestructor {
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
trait Trait {
|
trait Trait {
|
||||||
|
|||||||
@@ -42,6 +42,7 @@
|
|||||||
// gdb-check:$10 = {x = {__0 = {__0 = 40, __1 = 41, __2 = 42}, __1 = {__0 = 43, __1 = 44}}, y = {__0 = 45, __1 = 46, __2 = 47, __3 = 48}}
|
// gdb-check:$10 = {x = {__0 = {__0 = 40, __1 = 41, __2 = 42}, __1 = {__0 = 43, __1 = 44}}, y = {__0 = 45, __1 = 46, __2 = 47, __3 = 48}}
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct NoPadding1 {
|
struct NoPadding1 {
|
||||||
|
|||||||
@@ -56,6 +56,7 @@
|
|||||||
// lldb-check:[...]$6 = ((21, 22), 23)
|
// lldb-check:[...]$6 = ((21, 22), 23)
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|||||||
@@ -62,6 +62,7 @@
|
|||||||
// structs.
|
// structs.
|
||||||
|
|
||||||
|
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct NoPadding16(u16, i16);
|
struct NoPadding16(u16, i16);
|
||||||
|
|||||||
@@ -48,6 +48,7 @@
|
|||||||
// lldb-check:[...]$3 = TheOnlyCase(-1)
|
// lldb-check:[...]$3 = TheOnlyCase(-1)
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Regular::{Case1, Case2, Case3};
|
use self::Regular::{Case1, Case2, Case3};
|
||||||
|
|||||||
@@ -175,6 +175,7 @@
|
|||||||
|
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
use self::Enum1::{Variant1, Variant2};
|
use self::Enum1::{Variant1, Variant2};
|
||||||
|
|||||||
@@ -42,6 +42,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// The first element is to ensure proper alignment, irrespective of the machines word size. Since
|
// The first element is to ensure proper alignment, irrespective of the machines word size. Since
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
// compile-flags:-g
|
// compile-flags:-g
|
||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
// No need to actually run the debugger, just make sure that the compiler can
|
// No need to actually run the debugger, just make sure that the compiler can
|
||||||
|
|||||||
@@ -79,6 +79,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
@@ -41,6 +41,7 @@
|
|||||||
|
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
#![feature(unboxed_closures, box_syntax)]
|
#![feature(unboxed_closures, box_syntax)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
@@ -71,6 +71,7 @@
|
|||||||
|
|
||||||
#![feature(unboxed_closures, box_syntax)]
|
#![feature(unboxed_closures, box_syntax)]
|
||||||
#![allow(unused_variables)]
|
#![allow(unused_variables)]
|
||||||
|
#![feature(omit_gdb_pretty_printer_section)]
|
||||||
#![omit_gdb_pretty_printer_section]
|
#![omit_gdb_pretty_printer_section]
|
||||||
|
|
||||||
struct Struct {
|
struct Struct {
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user