Go to the source code of this file.
◆ migrate_census()
| void migrate_census |
( |
const contextt & | context | ) |
|
Migrate every symbol's type, and its value where it has one, and report what could not be represented.
Migration signals failure by throwing a std::string, so each symbol is wrapped: one unrepresentable construct names itself and the walk continues, which is what makes this a census rather than a bisection. Walks the whole linked context, operational models included, which is the set goto_convert migrates anyway.
Frontend-agnostic on purpose: clang-cpp and solidity share one definition, so a census taken on either is the same measurement (docs/roadmap/scope-solidity-irep2.md ยง3, step S.2).
◆ migrate_expr() [1/2]
Returning form, for call sites that want an expression rather than an out-parameter – symbol.set_value(migrate_expr(v)) instead of two statements and a named temporary.
◆ migrate_expr() [2/2]
| void migrate_expr |
( |
const exprt & | expr, |
|
|
expr2tc & | new_expr ) |
◆ migrate_expr_back()
◆ migrate_symbol_type()
◆ migrate_symbol_value()
◆ migrate_type()
◆ migrate_type_back()
◆ migrate_type_back_cache_clear()
| void migrate_type_back_cache_clear |
( |
| ) |
|
◆ set_symbol_type()
◆ side_effect_function_call2tc()
◆ symbol_expr2tc()
◆ migrate_namespace_lookup