In fpgac.y, newstate() is missing a return statement, but there is an assignment $$.v = newstate("looptop");
I assume return(nextstate) would be correct?
Can you please verify that? Thank you.
I found some more bugs.
/******/
In fpgac.y, rule globalvarlistmember if(($1.v->type == TYPE_DEFINED) && ($1.v->type == TYPE_FLOAT)) becomes if(($1.v->type & TYPE_DEFINED) && ($1.v->type & TYPE_FLOAT))
To fix the while(){} construct:
In fpgac.y, rule whileloop RIGHTPAREN stmt becomes RIGHTPAREN whilestmt
Additional rule whilestmt: stmt | leftcurly declarations stmts rightcurly
In syntax.l sscanf(... "%Li" ...); becomes "%llo" for octal "%llx" for hex
In output_netlist.c, output_CNF() if(b->variable->width == 8) fprintf(outputfile, "%c,", p); becomes if(b->variable->width == 8) fprintf(outputfile, "%c,", *p);
This fixes the most apparent bugs so far.
Log in to post a comment.
I found some more bugs.
/******/
In fpgac.y, rule globalvarlistmember
if(($1.v->type == TYPE_DEFINED) && ($1.v->type == TYPE_FLOAT))
becomes
if(($1.v->type & TYPE_DEFINED) && ($1.v->type & TYPE_FLOAT))
/******/
To fix the while(){} construct:
In fpgac.y, rule whileloop
RIGHTPAREN stmt
becomes
RIGHTPAREN whilestmt
Additional rule
whilestmt: stmt | leftcurly declarations stmts rightcurly
/******/
In syntax.l
sscanf(... "%Li" ...);
becomes
"%llo" for octal
"%llx" for hex
/******/
In output_netlist.c, output_CNF()
if(b->variable->width == 8)
fprintf(outputfile, "%c,", p);
becomes
if(b->variable->width == 8)
fprintf(outputfile, "%c,", *p);
/******/
This fixes the most apparent bugs so far.