30 setName(
"CloneExpressions");
32 const IR::Node *postorder(IR::PathExpression *path)
override {
33 path->path = path->path->clone();
38 const IR::Node *postorder(IR::Member *member)
override {
39 if (member->expr->is<IR::TypeNameExpression>()) {
40 return new IR::Member(member->expr->clone(), member->member);
46 const T *clone(
const IR::Node *node) {
47 return node->apply(*this)->
to<T>();
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:24