diff options
Diffstat (limited to 'lang/c')
| -rw-r--r-- | lang/c/pseudoc.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lang/c/pseudoc.cpp b/lang/c/pseudoc.cpp index b91b8e71..296c2d6a 100644 --- a/lang/c/pseudoc.cpp +++ b/lang/c/pseudoc.cpp @@ -1618,6 +1618,15 @@ void PseudoCFunction::GetExprTextInternal(const HighLevelILInstruction& instr, H tokens.Append(OperationToken, "&"); } } + else if ((!settings || settings->IsOptionSet(ShowTypeCasts)) && srcExpr.operation == HLIL_VAR) + { + if (srcExpr.GetType() && srcExpr.GetType()->GetClass() != StructureTypeClass && srcExpr.size > instr.size) + { + tokens.AppendOpenParen(); + AppendSizeToken(instr.size, false, tokens); + tokens.AppendCloseParen(); + } + } GetExprTextInternal(srcExpr, tokens, settings, MemberAndFunctionOperatorPrecedence); } |
