summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2020-08-31 21:29:30 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2020-08-31 21:29:30 +0200
commit08beb5d4387cc1269a78fa7b97d0d64fbd43fb73 (patch)
treebf6771835fb86d316ef4e6fdfa8612f5ef171ec0
parent72f35ba765aa8aad82421b26b4f61377ae0aee9b (diff)
downloadcompilertests-08beb5d4387cc1269a78fa7b97d0d64fbd43fb73.tar.gz
compilertests-08beb5d4387cc1269a78fa7b97d0d64fbd43fb73.tar.bz2
..
-rw-r--r--ecomp-c/ec.c21
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;