我想在rust-gdb控制台中打印一个函数的结果。
fn.rs
fn one() -> i32 {
1
}
fn main() {
println!("{}", one());
}控制台
rustc -g ./fn.rs
rust-gdb ./fn
>>> b 6
>>> run
>>> print one()
Invalid data type for function to be called.有没有显示函数结果的方法?
我使用的是Rust 1.27.0和GDB 7.11。我直接编译fn.rs;没有模块。我尝试了这些额外的命令:
(gdb) p one
$1 = 1
(gdb) p one()
Invalid data type for function to be called.
(gdb) p
::module::one() A syntax error in expression, near ::one()'.
(gdb) p
::module::one A syntax error in expression, near ::one'.
(gdb) p
fn::one() No symbol "one" in namespace "fn".P one()是否禁用?
发布于 2018-08-18 16:34:20
我试过gdb==8.11了。它工作得很完美。
(gdb) p one
$1 = {fn () -> i32} 0x55555555a5a0 <fn::one>
(gdb) p one()
$2 = 1谢谢大家。(尤其是@mcarton)
https://stackoverflow.com/questions/51879050
复制相似问题