diff options
author | Luis Ontanon <luis.ontanon@gmail.com> | 2007-01-16 16:41:12 +0000 |
---|---|---|
committer | Luis Ontanon <luis.ontanon@gmail.com> | 2007-01-16 16:41:12 +0000 |
commit | d1c6370f9b7b1cfe888d017c5d130ce6a43dbd3b (patch) | |
tree | 3b902cc844f4d011365785a400a449a2079b8c51 /tools | |
parent | 843681b79280bba7393a822db7c3c3ec0ba433d9 (diff) |
It looks that their fix to my fix broke things out...
svn path=/trunk/; revision=20452
Diffstat (limited to 'tools')
-rw-r--r-- | tools/lemon/lemon.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/lemon/lemon.c b/tools/lemon/lemon.c index 249c9e6981..fcefe260b4 100644 --- a/tools/lemon/lemon.c +++ b/tools/lemon/lemon.c @@ -3247,8 +3247,10 @@ PRIVATE void translate_code(struct lemon *lemp, struct rule *rp){ for(i=0; i<rp->nrhs; i++) used[i] = 0; lhsused = 0; + if (!rp->code) rp->code = "\n"; + append_str(0,0,0,0); - for(cp=(rp->code?rp->code:""); *cp; cp++){ + for(cp=rp->code; *cp; cp++){ if( safe_isalpha(*cp) && (cp==rp->code || (!safe_isalnum(cp[-1]) && cp[-1]!='_')) ){ char saved; for(xp= &cp[1]; safe_isalnum(*xp) || *xp=='_'; xp++); |