1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-20 04:02:27 +00:00
freebsd-ports/devel/re2c/files/patch-ac

73 lines
1.7 KiB
Plaintext
Raw Normal View History

--- dfa.cc.old Fri Feb 4 15:18:55 2000
+++ dfa.cc Fri Feb 4 15:22:57 2000
@@ -109,6 +109,7 @@
uint nc = ub - lb;
GoTo *goTo = new GoTo[nc];
Span *span = new Span[nc];
+ uint j;
memset((char*) goTo, 0, nc*sizeof(GoTo));
tail = &head;
head = NULL;
@@ -123,7 +124,7 @@
uint nGoTos = 0;
s->rule = NULL;
- for(iP = s->kernel; i = *iP; ++iP){
+ for(iP = s->kernel; (i = *iP) != NULL; ++iP){
if(i->i.tag == CHAR){
for(Ins *j = i + 1; j < (Ins*) i->i.link; ++j){
if(!(j->c.link = goTo[j->c.value - lb].to))
@@ -136,7 +137,7 @@
}
}
- for(uint j = 0; j < nGoTos; ++j){
+ for(j = 0; j < nGoTos; ++j){
GoTo *go = &goTo[goTo[j].ch - lb];
i = (Ins*) go->to;
for(cP = work; i; i = (Ins*) i->c.link)
@@ -169,7 +170,7 @@
DFA::~DFA(){
State *s;
- while(s = head){
+ while((s = head) != NULL){
head = s->next;
delete s;
}
@@ -185,11 +186,12 @@
State *DFA::findState(Ins **kernel, uint kCount){
Ins **cP, **iP, *i;
+ State *s;
kernel[kCount] = NULL;
cP = kernel;
- for(iP = kernel; i = *iP; ++iP){
+ for(iP = kernel; (i = *iP) != NULL; ++iP){
if(i->i.tag == CHAR || i->i.tag == TERM){
*cP++ = i;
} else {
@@ -199,9 +201,9 @@
kCount = cP - kernel;
kernel[kCount] = NULL;
- for(State *s = head; s; s = s->next){
+ for(s = head; s; s = s->next){
if(s->kCount == kCount){
- for(iP = s->kernel; i = *iP; ++iP)
+ for(iP = s->kernel; (i = *iP) != NULL; ++iP)
if(!isMarked(i))
goto nextState;
goto unmarkAll;
@@ -218,7 +220,7 @@
toDo = s;
unmarkAll:
- for(iP = kernel; i = *iP; ++iP)
+ for(iP = kernel; (i = *iP) != NULL; ++iP)
unmark(i);
return s;