Summary: | sys-apps/nawk-20110810-r1 is useless and broken | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Alexandre Rostovtsev (RETIRED) <tetromino> |
Component: | [OLD] Core system | Assignee: | Christoph Junghans (RETIRED) <junghans> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | naota |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 418473, 419555, 425744 | ||
Attachments: | emerge --info nawk |
(In reply to comment #0) > ~ $ echo hello | nawk '{ print $0, "world" }' > nawk: syntax error at source line 1 > context is > { >>> print <<< $0, "world" } > nawk: illegal statement at source line 1 Works on my x86 box, but not on my amd64 box! I made a version bump, which fixed the issue on my amd64 box. nawk-20121220-r1 is still failing for me... The error is being raised at awkgram.y:308 : SYNTAX("illegal statement") Perhaps it makes a difference which virtual/yacc implementation is being used to build nawk? I am using bison-2.7 (In reply to comment #4) > The error is being raised at awkgram.y:308 : SYNTAX("illegal statement") > > Perhaps it makes a difference which virtual/yacc implementation is being > used to build nawk? I am using bison-2.7 I used sys-devel/bison-2.4.3. OK, this looks like a parallel make failure. If I build nawk-20121220-r1 with MAKEOPTS=-j1, it seems to run correctly. If I build with MAKEOPTS=-j8, it gives a syntax error on any input file. (In reply to comment #6) > OK, this looks like a parallel make failure. > > If I build nawk-20121220-r1 with MAKEOPTS=-j1, it seems to run correctly. > If I build with MAKEOPTS=-j8, it gives a syntax error on any input file. I think, I found it. The tarball comes with an obsolete version of ytab.{c,h}, but actually it is build with yacc. I will patch the makefile. fixed in nawk-20121220-r2. |
Created attachment 338060 [details] emerge --info nawk ~ $ echo hello | gawk '{ print $0, "world" }' hello world ~ $ echo hello | mawk '{ print $0, "world" }' hello world ~ $ echo hello | nawk '{ print $0, "world" }' nawk: syntax error at source line 1 context is { >>> print <<< $0, "world" } nawk: illegal statement at source line 1 This is on ~amd64; emerge --info is attached.