summaryrefslogtreecommitdiff
path: root/src/compiler.h
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@colm.net>2018-12-17 14:10:50 +0200
committerAdrian Thurston <thurston@colm.net>2018-12-17 14:11:53 +0200
commiteccfd443ed78c614c396c542a07673c113f1ecd3 (patch)
tree297658178b1f24d53c476c9fa62f5a44b9a87d9a /src/compiler.h
parentfc1d61f4cab2260e90fcd468078eaa0d2046f372 (diff)
downloadcolm-eccfd443ed78c614c396c542a07673c113f1ecd3.tar.gz
allow referencing a tree in reduction actions
syntax is $*N
Diffstat (limited to 'src/compiler.h')
-rw-r--r--src/compiler.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler.h b/src/compiler.h
index 9ad38ee2..ac4a67e6 100644
--- a/src/compiler.h
+++ b/src/compiler.h
@@ -1056,7 +1056,7 @@ struct Compiler
void initReductionNeeds( Reduction *reduction );
- void findRhsRefs( bool &lhsUsed, Vector<ProdEl*> &rhsUsed,
+ void findRhsRefs( bool &lhsUsed, Vector<ProdEl*> &rhsUsed, Vector<ProdEl*> &treeUsed,
Vector<ProdEl*> &locUsed, Reduction *reduction, Production *production,
const ReduceTextItemList &list );
@@ -1082,6 +1082,7 @@ struct Compiler
void writeLhsRef( Production *production, ReduceTextItem *i );
void writeRhsRef( Production *production, ReduceTextItem *i );
+ void writeTreeRef( Production *production, ReduceTextItem *i );
void writeRhsLoc( Production *production, ReduceTextItem *i );
void writeHostItemList( Production *production, const ReduceTextItemList &list );
void writeCommitStub();