diff options
Diffstat (limited to 'frontends')
| -rw-r--r-- | frontends/ast/simplify.cc | 5 | 
1 files changed, 5 insertions, 0 deletions
| diff --git a/frontends/ast/simplify.cc b/frontends/ast/simplify.cc index 54b9efaad..86dd80c65 100644 --- a/frontends/ast/simplify.cc +++ b/frontends/ast/simplify.cc @@ -150,6 +150,11 @@ bool AstNode::simplify(bool const_fold, bool at_zero, bool in_lvalue, int stage,  					reg->str = stringf("%s[%d]", node->str.c_str(), i);  					reg->is_reg = true;  					reg->is_signed = node->is_signed; +					for (auto &it : node->attributes) +						if (it.first != ID(mem2reg)) +							reg->attributes.emplace(it.first, it.second->clone()); +					reg->filename = node->filename; +					reg->linenum = node->linenum;  					children.push_back(reg);  					while (reg->simplify(true, false, false, 1, -1, false, false)) { }  				} | 
