summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAkim Demaille <akim.demaille@gmail.com>2021-08-29 09:38:07 +0200
committerAkim Demaille <akim.demaille@gmail.com>2021-08-29 09:50:02 +0200
commitbc5aa8e2743e7b56818d54719bf4095a6dc09912 (patch)
treec237fb57357925f805c23c8c2801ca6253b294f2 /src
parent0a82bf5c075fb93fe346f4ff7212dd413fb0d4ad (diff)
downloadbison-bc5aa8e2743e7b56818d54719bf4095a6dc09912.tar.gz
tests: don't postprocess stderr with sed
On Solaris, sed throws away the NUL bytes from the stream, even in C locale. So instead of postprocessing bison's stderr to neutralize changes in value of `argv[0]`, use an envvar to actually neutralize variations of `argv[0]` during tests. Reported by Dagobert Michelsen. <https://lists.gnu.org/r/bug-bison/2021-08/msg00025.html> * src/main.c (main): Change `argv[0]` if BISON_PROGRAM_NAME is defined. * tests/bison.in: No longer mess with stderr, just pass the expected BISON_PROGRAM_NAME value.
Diffstat (limited to 'src')
-rw-r--r--src/main.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/main.c b/src/main.c
index 22291d23..1185bf24 100644
--- a/src/main.c
+++ b/src/main.c
@@ -63,6 +63,12 @@
int
main (int argc, char *argv[])
{
+ {
+ char *cp = getenv ("BISON_PROGRAM_NAME");
+ if (cp)
+ argv[0] = cp;
+ }
+
#define DEPENDS_ON_LIBINTL 1
set_program_name (argv[0]);
setlocale (LC_ALL, "");