summaryrefslogtreecommitdiff
path: root/lib/.gitignore
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2012-01-29 12:50:32 +0100
committerAkim Demaille <demaille@gostai.com>2012-01-31 09:26:08 +0100
commite187b40d317f2bcff21779a774a767f51c0fe276 (patch)
tree4f3d26ef92dce23c075788ad1e1daa39a4dc15b0 /lib/.gitignore
parentec94982becc67543aa05f67ea861f689f1e4ddd0 (diff)
downloadbison-e187b40d317f2bcff21779a774a767f51c0fe276.tar.gz
do not ignore errors like ENOSPC,EIO when writing to stdout
Standard output was never explicitly closed, so we could not detect failure. Thus, bison would ignore the errors of writing to a full file system and getting an I/O error on write, but only for standard output, e.g., for --print-localedir, --print-datadir, --help and some verbose output. Now, "bison --print-datadir > /dev/full" reports the write failure: bison: write error: No space left on device Before, it would exit 0 with no diagnostic, implying success. This is not an issue for "--output=-" or the other FILE-accepting command-line options, because unlike most other GNU programs, an output file argument of "-" is treated as the literal "./-", rather than standard output. * bootstrap.conf (gnulib_modules): Add closeout. * src/main.c: Include "closeout.h". Use atexit to ensure we close stdout. * .gitignore: Ignore new files pulled in via gnulib-tool. (cherry picked from commit acb5895680611f8beb497b41694d9686f2932c50) Conflicts: m4/.gitignore
Diffstat (limited to 'lib/.gitignore')
-rw-r--r--lib/.gitignore6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/.gitignore b/lib/.gitignore
index 54edced3..365b84d0 100644
--- a/lib/.gitignore
+++ b/lib/.gitignore
@@ -259,3 +259,9 @@
/strerror-override.h
/strerror_r.c
/xalloc-oversized.h
+/close-stream.c
+/close-stream.h
+/closeout.c
+/closeout.h
+/fpending.c
+/fpending.h