diff options
-rw-r--r-- | ecomp-c/ec.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/ecomp-c/ec.c b/ecomp-c/ec.c index c32865a..8a2fd4a 100644 --- a/ecomp-c/ec.c +++ b/ecomp-c/ec.c @@ -1593,17 +1593,6 @@ static void parseParameterList( Scope *scope, ExpressionNodeList *list ) { ExpressionNode *node; /* - * function insertBefore(List list, Node node, Node newNode) - newNode.next := node - if node.prev == null - newNode.prev := null -- (not always necessary) - list.firstNode := newNode - else - newNode.prev := node.prev - node.prev.next := newNode - node.prev := newNode - -We also need a function to insert a node at the beginning of a possibly empty list: function insertBeginning(List list, Node newNode) if list.firstNode == null @@ -1612,7 +1601,15 @@ function insertBeginning(List list, Node newNode) newNode.prev := null newNode.next := null else - insertBefore(list, list.firstNode, newNode) + newNode.next := list.firstNode + if list.firstNode.prev == null + newNode.prev := null -- (not always necessary) + list.firstNode := newNode + else + newNode.prev := list.firstNode.prev + list.firstNode.prev.next := newNode + list.firstNode.prev := newNode + */ Expect( S_lparen ); list->head = NULL; |