From a6f64bf19f966f5ecbaab0a9eff85ecbaa573317 Mon Sep 17 00:00:00 2001 From: Brandon Miller Date: Mon, 14 Apr 2025 12:43:50 -0400 Subject: Fix pseudo C/Rust absent lhs on comparison This issue was caused because HLIL_SPLIT was not being handled on the left and right expressions of HLIL_IF instructions --- lang/rust/pseudorust.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lang/rust/pseudorust.h') diff --git a/lang/rust/pseudorust.h b/lang/rust/pseudorust.h index 96e656c2..33794a3c 100644 --- a/lang/rust/pseudorust.h +++ b/lang/rust/pseudorust.h @@ -44,6 +44,8 @@ class PseudoRustFunction: public BinaryNinja::LanguageRepresentationFunction BinaryNinja::HighLevelILTokenEmitter& tokens, BinaryNinja::DisassemblySettings* settings); void AppendFieldTextTokens(const BinaryNinja::HighLevelILInstruction& var, uint64_t offset, size_t memberIndex, size_t size, BinaryNinja::HighLevelILTokenEmitter& tokens, bool deref); + void AppendDefaultSplitExpr(const BinaryNinja::HighLevelILInstruction& instr, BinaryNinja::HighLevelILTokenEmitter& tokens, + BinaryNinja::DisassemblySettings* settings, BNOperatorPrecedence precedence); bool IsMutable(const BinaryNinja::Variable& var) const; void GetExprText(const BinaryNinja::HighLevelILInstruction& instr, BinaryNinja::HighLevelILTokenEmitter& tokens, -- cgit v1.3.1