diff options
Diffstat (limited to 'colm/tree.c')
-rw-r--r-- | colm/tree.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/colm/tree.c b/colm/tree.c index 341aad8d..36325847 100644 --- a/colm/tree.c +++ b/colm/tree.c @@ -987,10 +987,9 @@ Tree *createGeneric( Program *prg, long genericId ) parser->id = genericInfo->langElId; parser->genericInfo = genericInfo; parser->pdaRun = malloc( sizeof(PdaRun) ); - parser->pdaRun->fsmRun = malloc( sizeof(FsmRun) ); /* Start off the parsing process. */ - initPdaRun( prg, parser->pdaRun, parser->pdaRun->fsmRun, prg->rtd->pdaTables, + initPdaRun( prg, parser->pdaRun, prg->rtd->pdaTables, genericInfo->parserId, false, false, 0 ); newGeneric = (Tree*) parser; @@ -1043,9 +1042,7 @@ free_tree: } else if ( generic->type == GEN_PARSER ) { Parser *parser = (Parser*)tree; - clearFsmRun( prg, parser->pdaRun->fsmRun ); clearPdaRun( prg, sp, parser->pdaRun ); - free( parser->pdaRun->fsmRun ); free( parser->pdaRun ); treeDownref( prg, sp, (Tree*)parser->input ); mapElFree( prg, (MapEl*)parser ); |