我想在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()已禁用?
答案 0 :(得分:1)
我尝试了gdb == 8.11。 效果很好。
(gdb) p one
$1 = {fn () -> i32} 0x55555555a5a0 <fn::one>
(gdb) p one()
$2 = 1
谢谢大家。 (尤其是@mcarton)