| 572 | } |
| 573 | |
| 574 | int idaapi lit_visitor_t::visit_expr(cexpr_t *expr) |
| 575 | { |
| 576 | qstring comment; |
| 577 | bool changed = false; |
| 578 | if(expr->op == cot_call) { |
| 579 | changed |= chkCallArg(expr, comment); |
| 580 | } else if((expr->op >= cot_asg && expr->op <= cot_ult)) { |
| 581 | cexpr_t *cons = expr->find_op(cot_num); |
| 582 | if(cons) { |
| 583 | cexpr_t *memb = expr->theother(cons); |
| 584 | if(memb->op == cot_memref || memb->op == cot_memptr) |
| 585 | changed |= chkStrucMemb(memb, cons, comment); |
| 586 | else |
| 587 | changed |= chkConstType(expr, cons, comment); |
| 588 | } |
| 589 | } else if (expr->op == cot_cast && expr->x->op == cot_num) { |
| 590 | changed |= chkConstType(expr, expr->x, comment); |
| 591 | } |
| 592 | |
| 593 | cmtModified |= setComment4Exp(func, cmts, expr, comment.c_str(), changed); |
| 594 | return 0; |
| 595 | } |
| 596 | |
| 597 | void lit_scan(cfunc_t *cfunc) |
| 598 | { |
nothing calls this directly
no test coverage detected