AST_FLAG_COVERAGE = 1 << 12,
AST_FLAG_BLOCK_COVERAGE = 1 << 13,
+ /*
+ * Propagates norefness to the IR so the unused (read/write) check can be
+ * more intelligently done.
+ */
+ AST_FLAG_NOREF = 1 << 14,
+
AST_FLAG_LAST,
AST_FLAG_TYPE_MASK = (AST_FLAG_VARIADIC | AST_FLAG_NORETURN),
AST_FLAG_COVERAGE_MASK = (AST_FLAG_BLOCK_COVERAGE)
bool m_keep_node;
bool m_side_effects;
- void propagateSideEffects(ast_node *other) const;
+ void propagateSideEffects(const ast_node *other);
};
#define ast_unref(x) do \
*/
std::vector<basic_value_t> m_initlist;
- /* usecount for the parser */
- size_t m_uses = 0;
-
ir_value *m_ir_v = nullptr;
std::vector<ir_value*> m_ir_values;
size_t m_ir_value_count = 0;