diff options
| author | KyleMiles <krm504@nyu.edu> | 2024-05-15 13:15:04 -0400 |
|---|---|---|
| committer | KyleMiles <krm504@nyu.edu> | 2024-05-15 13:17:12 -0400 |
| commit | fb893038862ad045d8ad1c624e0e954042a2f01a (patch) | |
| tree | 235f5c1915e53db9ea19777a86b529cd0e920d01 /rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs | |
| parent | 13b0493430910d53c3cd68935a1692521b796c31 (diff) | |
DWARF Import : Add support for variable arguments
Diffstat (limited to 'rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs')
| -rw-r--r-- | rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs b/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs index 537051c8..4db125c4 100644 --- a/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs +++ b/rust/examples/dwarf/dwarf_import/src/dwarfdebuginfo.rs @@ -47,6 +47,7 @@ pub(crate) struct FunctionInfoBuilder { pub(crate) address: Option<u64>, pub(crate) parameters: Vec<Option<(String, TypeUID)>>, pub(crate) platform: Option<Ref<Platform>>, + pub(crate) variable_arguments: bool, } impl FunctionInfoBuilder { @@ -188,6 +189,7 @@ impl DebugInfoBuilder { return_type: Option<TypeUID>, address: Option<u64>, parameters: Vec<Option<(String, TypeUID)>>, + variable_arguments: bool, ) { // Raw names should be the primary key, but if they don't exist, use the full name // TODO : Consider further falling back on address/architecture @@ -211,6 +213,7 @@ impl DebugInfoBuilder { address, parameters, platform: None, + variable_arguments, }); } } @@ -325,10 +328,7 @@ impl DebugInfoBuilder { }) .collect(); - // TODO : Handle - let variable_parameters = false; - - binaryninja::types::Type::function(&return_type, ¶meters, variable_parameters) + binaryninja::types::Type::function(&return_type, ¶meters, function.variable_arguments) } fn commit_functions(&self, debug_info: &mut DebugInfo) { |
