bug-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Hangs on error when input is a pipe


From: Ben Longbons
Subject: Hangs on error when input is a pipe
Date: Sat, 27 Jun 2015 13:15:32 -0700

When bison is invoked with input from a pipe (e.g. `/dev/stdin`) on a
grammar that contains an error, it will hang indefinitely when trying
to print the caret diagnostic.

Testing with `strace` indicates that the `read` syscall is being
called repeatedly even though it returns 0 (i.e. EOF). Without
investigation, I can only assume this is a failure to check `feof` in
libc?

As a workaround, pass `--feature=none` to disable caret diagnostics.

Tested with bison 3.0.2 (as packaged in Debian Jessie, which is
probably just removing the nonfree documentation), but I've checked
the git log for 3.0.4 and don't see anything that looks like it would
change this.

-o11c



reply via email to

[Prev in Thread] Current Thread [Next in Thread]