diff options
| author | KyleMiles <krm504@nyu.edu> | 2023-08-03 12:29:35 -0400 |
|---|---|---|
| committer | KyleMiles <krm504@nyu.edu> | 2023-08-22 09:59:46 -0400 |
| commit | b7a03b4d5e24485691ece768c1ea219312e9b9f8 (patch) | |
| tree | a4a6a65acac017011094634599dae16d87a9a710 /rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs | |
| parent | f6879fc771f24778f67c84cc45b33e4921614206 (diff) | |
Recover parameter names even when type parsing fails (this could be a bad idea)
Diffstat (limited to 'rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs')
| -rw-r--r-- | rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs b/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs index aa359232..fad45f98 100644 --- a/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs +++ b/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs @@ -252,16 +252,16 @@ impl DebugInfoBuilder { let parameters: Vec<FunctionParameter<CString>> = function .parameters .iter() - .filter_map(|parameter| { - if let Some((name, uid)) = parameter { - Some(FunctionParameter::new( - self.get_type(*uid).unwrap().1, - name.clone(), - None, - )) - } else { - None + .filter_map(|parameter| match parameter { + Some((name, 0)) => { + Some(FunctionParameter::new(Type::void(), name.clone(), None)) } + Some((name, uid)) => Some(FunctionParameter::new( + self.get_type(*uid).unwrap().1, + name.clone(), + None, + )), + _ => None, }) .collect(); |
