Fix the burm_STATE_LABEL thing, since the version of burg that I have (and that I assume we'll be using) doesn't use SET_STATE_LABEL - it makes assignments to STATE_LABEL.

git-svn-id: svn://10.0.0.236/trunk@16216 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
toshok%hungry.com
1998-12-11 02:48:32 +00:00
parent 1708b522be
commit 019795499b
2 changed files with 2 additions and 1 deletions

View File

@@ -30,7 +30,7 @@
typedef Primitive* NODEPTR_TYPE;
#define OP_LABEL(p) p->getOperation()
#define STATE_LABEL(p) p->getBurgState()
#define STATE_LABEL(p) *(p->getBurgStatePtr())
#define SET_STATE_LABEL(p, state) p->setBurgState(state)
#define LEFT_CHILD(p) CodeGenerator::getExpressionLeftChild(p)
#define RIGHT_CHILD(p) CodeGenerator::getExpressionRightChild(p)

View File

@@ -416,6 +416,7 @@ class Primitive: public DataNode, public DoublyLinkedEntry<Primitive> // Links t
void changeContainer(ControlNode *c) {assert(container); remove(); container = c;} // For use by ControlNode only.
Uint16 getBurgState() const { return burgState;}
Uint16* getBurgStatePtr() { return &burgState; }
Uint16 setBurgState(Uint16 newState) {burgState = newState; return newState;}
Uint16 getLineNumber() {return lineNumber;}