Hi,
the `break` command can be a bit particular where function names are
concerned, especially when namespaces and generics are involved. The
correct full name of the shuffle method would be something like
`std::rand::TaskRng::shuffle<int>` (there is a seperate function for
every set of concrete type parameters, so `shuffle<int>` would be
different from `shuffle<f32>`).
My recommendation here is to either
* set the breakpoint using line numbers: break prog.rs:7
* or use the `rbreak` command which takes a regular expression as
argument, that is, `rbreak shuffle` will match any function containing
the string "shuffle" in its name.
Don't be shy to ask further questions if you have any :)
-Michael
On 13.01.2014 00:13, Artella Coding wrote:
Suppose I have the following program :
**********************************************
//prog1.rs <http://prog1.rs>
use std::rand::{task_rng, Rng};
fn main() {
let names = ["Alice", "Bob", "Carol"];
for name in names.iter() {
let v = task_rng().shuffle(~[1,2,3]);
for num in v.iter() {
println!("{:s} says: {:d}", *name, *num);
}
}
}
**********************************************
In previous versions of rust it was possible to put
a breakpoint on "shuffle" e.g.
One would first compile via :
rustc -Z debug-info prog1.rs <http://prog1.rs>
and then one could proceed to put a breakpoint on "shuffle" :
gdb ./prog1
(gdb) break shuffle
(gdb) run
However now it doesn't seem possible to put a breakpoint on shuffle.
Why is this? Thanks.
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev