diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/expr/node.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/expr/node.h b/src/expr/node.h index e7c51f0e2..9ada7879c 100644 --- a/src/expr/node.h +++ b/src/expr/node.h @@ -1376,7 +1376,9 @@ NodeTemplate<ref_count>::substitute(Iterator1 nodesBegin, NodeBuilder<> nb(getKind()); if(getMetaKind() == kind::metakind::PARAMETERIZED) { // push the operator - nb << getOperator(); + nb << getOperator().substitute(nodesBegin, nodesEnd, + replacementsBegin, replacementsEnd, + cache); } for(const_iterator i = begin(), iend = end(); @@ -1427,7 +1429,7 @@ NodeTemplate<ref_count>::substitute(Iterator substitutionsBegin, NodeBuilder<> nb(getKind()); if(getMetaKind() == kind::metakind::PARAMETERIZED) { // push the operator - nb << getOperator(); + nb << getOperator().substitute(substitutionsBegin, substitutionsEnd, cache); } for(const_iterator i = begin(), iend = end(); |